  @charset "utf-8";
  /* CSS Document */
  /* 
共通
----------------------------------------------------------- */
  .inner {
    width: 1250px;
    max-width: 95%;
    margin: 0 auto;
  }
  .block00 {
    position: relative;
  }
  .sp350, .sp450, .sp500, .sp640, .sp800, .sp900 {
    display: none;
  }
  #dynamic-to-top {
    display: none !important;
  }
  /* 
FV
----------------------------------------------------------- */
  .top_fv {
    width: 100%;
    /* height: 100vh;*/
    height: 1080px;
    position: relative;
    display: flex;
    align-items: center;
    overflow: hidden;
  }
  .top_fv::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("./library/images/fv01.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -1;
  }
  .top_fv .cont01 {
    margin: 0 auto 6% 0%;
    position: relative;
    z-index: 0;
  }
  .top_fv .cont01::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 120%;
    height: 120%;
    background-image: radial-gradient(ellipse farthest-side, rgba(255, 255, 255, .5) 50%, transparent);
    z-index: -1;
    transform: translate(-50%, -50%);
  }
  .top_fv .cont02 {
    position: absolute;
    bottom: 0;
    right: 6%;
    display: flex;
    flex-flow: wrap;
  }
  .top_fv .cont02 li {
    width: 23%;
    margin: 0 1% 1rem;
  }
  .top_fv .cont02 li:nth-child(2) {
    transition-delay: .2s;
  }
  .top_fv .cont02 li:nth-child(3) {
    transition-delay: .4s;
  }
  .top_fv .cont02 li:nth-child(4) {
    transition-delay: .6s;
  }
  /* 
block01
----------------------------------------------------------- */
  .block01 {
    width: 100%;
    height: 830px;
    position: relative;
    display: flex;
    align-items: center;
  }
  .block01::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("./library/images/block01_bi.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -1;
  }
  .block01 .cont01 {
    position: absolute;
    top: 2%;
    left: 1%;
  }
  .block01 .inner {
    position: relative;
    height: 100%;
  }
  .block01 .cont03 {
    position: absolute;
    bottom: 4%;
    right: -13%;
    transition-delay: .5s;
  }
  .block10 {
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    box-shadow: 0 13px 19px rgba(0, 0, 0, .31);
    overflow: hidden;
  }
  .block10::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 587px;
    height: 100%;
    background-image: url("./library/images/block10_1.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -3;
  }
  .block10::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 592px;
    height: 100%;
    background-image: url("./library/images/block10_2.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -3;
  }
  .block10 .cont01 {
    position: absolute;
    top: 2%;
    left: 1%;
    z-index: -1;
  }
  .block10 .inner {
    position: relative;
    height: 100%;
  }
  .block10 .cont02 {
    padding: 14.6rem 0 5.5rem;
    letter-spacing: .1em;
  }
  .block10 .cont02 h2 {
    margin-bottom: 5.5rem;
    color: #141927;
    text-align: center;
    letter-spacing: .3em;
  }
  .block10 .cont02 h2 .dec01 {
    font-size: 4.2rem;
    position: relative;
  }
  .block10 .cont02 h2 .dec01::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 105%;
    height: 100%;
    background-image: linear-gradient(transparent 65%, #fdff74 65%);
    background-repeat: no-repeat;
    z-index: -1;
  }
  .block10 .cont02 h2 .dec011 {
    font-size: 3.3rem;
  }
  .block10 .cont02 .text0a {
    font-size: 1.3rem;
    text-align: center;
    margin-bottom: 3.75rem;
  }
  .block10 .cont02 .dec02 {
    position: relative;
    background: linear-gradient(#db6969, #db6969) 0 100%/100% .5em no-repeat;
  }
  /*.block10 .cont02 .dec02::before{
  content:"";
  display: block;
  position: absolute;
  bottom:0;
  left:50%;
  transform: translateX(-50%);
  width:95%;
  height:20%;
  background-image:linear-gradient(90deg, transparent 0%, #db6969 5%, #db6969 95%, transparent 100% );
  background-repeat: no-repeat;
  z-index: -1;
}

*/
  .block10 .cont02 .text0b {
    color: #e91010;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 1rem;
  }
  .block10 .cont02 .text0c {
    text-align: center;
    line-height: 1.5;
  }
  .block10 .cont03 {
    position: absolute;
    bottom: 4%;
    right: -13%;
    transition-delay: .5s;
    z-index: -1;
  }
  /* 
block02
----------------------------------------------------------- */
  .block02 {
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    padding: 6.8rem 0 7.75rem;
  }
  .block02::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 37.1vw;
    height: 51.6vw;
    background-image: url("./library/images/block02_01.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -1;
  }
  .block02 .inner {
    position: relative;
    height: 100%;
    width: 1100px;
  }
  .block02 .cont01 {
    text-align: center;
    margin: 0 0 4.3rem 0;
  }
  .block02 .cont02 {
    display: flex;
    flex-flow: wrap;
  }
  .block02 .cont02 li {
    width: 50%;
    margin: 0 0 1.375rem;
    text-align: center;
  }
  /* 
block03
----------------------------------------------------------- */
  .block03 {
    width: 100%;
    padding-bottom: 4.8125rem;
    position: relative;
    overflow: inherit;
  }
  .block03::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-image: url("./library/images/block03_bi.jpg");
    background-repeat: repeat-y;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    z-index: -1;
  }
  .block03::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 1px;
    right: 0;
    width: 100%;
    height: 50px;
    z-index: -2;
    filter: drop-shadow(0 0 24px rgba(0, 0, 0, .38));
    background-color: #000;
  }
  .block03 .inner {
    width: 1660px;
    height: 100%;
  }
  .block03 .cont01 {
    background-color: #831206;
    /*  margin: 0 calc(50% - 50vw);
*/ height: 332px;
    position: relative;
    margin-bottom: calc(54px + 5.5rem);
    font-size: 4.6rem;
    color: #fff;
    line-height: 1.2;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    z-index: 0;
    filter: drop-shadow(0 0 24px rgba(0, 0, 0, .38));
  }
  .block03 .cont01 h2 {
    width: 1250px;
    max-width: 95%;
    margin: 0 auto;
  }
  .block03 .cont01 h2::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 389px;
    height: 479px;
    background-image: url("./library/images/block03_01.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -1;
    opacity: 0;
  }
  .block03 .cont01.on h2::before {
    left: 4%;
    opacity: 1;
    transition: .5s all ease;
  }
  .block03 .cont01 h2::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 524px;
    height: 308px;
    background-image: url("./library/images/block03_02.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -1;
    opacity: 0;
  }
  .block03 .cont01.on h2::after {
    right: 4%;
    opacity: 1;
    transition: .5s all ease;
  }
  .block03 .cont01 span {
    font-size: 3.4rem;
  }
  .block03 .cont01 em {
    color: #fcfe32;
  }
  .block03 .cont01::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform-origin: top center;
    transform: translate(-50%, 0);
    width: 258px;
    height: 54px;
    background-image: url("./library/images/block03_06.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -1;
  }
  .block03 .cont01.on::before {
    transform: translate(-50%, 53px);
    transition: .5s all ease;
    transition-delay: .3s;
  }
  .block03 .cont02 {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
  }
  .block03 .cont02.set_m {
    display: none;
  }
  .block03 .cont02 li {
    display: flex;
    flex-flow: wrap;
    width: 48%;
    margin-bottom: 3.5rem;
    flex-flow: column;
    text-align: center;
    box-shadow: 0 0 19px rgba(0, 0, 0, .31);
    background-color: #fff;
  }
  .block03 .cont02.set_m li {
    padding: 1.875rem 3.4% 3.1rem;
  }
  .block03 .cont02 li:nth-child(2n) {
    margin-left: 2%;
  }
  .block03 .cont02 li h3 {
    margin-bottom: 5rem;
  }
  .block03 .cont02 li .point_n {
    margin-bottom: 2.4rem;
    font-size: 1.1rem;
    position: relative;
    line-height: 1.5;
    font-family: 'Noto Serif JP', serif;
    font-weight: 700;
  }
  .block03 .cont02 li .point_n::before {
    content: "";
    display: block;
    position: absolute;
    top: -3.2rem;
    left: 50%;
    width: 64px;
    height: 58px;
    transform: translateX(-50%);
    background-image: url("./library/images/block03_05.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
  }
  .block03 .cont02 li .point_n .dec01 {
    font-size: 1.56rem;
  }
  .block03 .cont02 li .point_f {
    background-color: #ea6912;
    padding: 2.5rem 3.5% 1.8rem;
    min-height: 200px;
    text-align: left;
    color: #fff;
    font-size: 1.1rem;
    position: relative;
  }
  .block03 .cont02 li .point_f::before {
    content: "";
    display: block;
    position: absolute;
    top: -1.5rem;
    left: 50%;
    width: 79px;
    height: 52px;
    transform: translateX(-50%);
    background-image: url("./library/images/block03_titke_dec01.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
  }
  .block03 .cont02 li .point_f .dec04 {
    position: relative;
    background: linear-gradient(#e91010, #e91010) 0 100%/100% .3em no-repeat;
  }
  /* 
block04
----------------------------------------------------------- */
  .block04 {
    padding: 9rem 0 9.5rem;
  }
  .block04 .inner {
    width: 100%;
    max-width: 100%;
  }
  .block04::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3rem;
    background-color: #fff;
    box-shadow: 0 21px 19px rgba(0, 0, 0, .31);
  }
  .block04 .cont01 {}
  .block04 h2 {
    text-align: center;
    margin-bottom: 5.6rem;
  }
  .block04 .cont01 p {
    padding: 5rem 0 10rem;
    font-size: 1.125rem;
    width: 900px;
    max-width: 100%;
    margin: 0 auto;
  }
  .block04 .cont02 {}
  .block04 .cont02 li {
    display: flex;
    flex-flow: wrap;
    width: 100%;
    align-items: center;
  }
  .block04 .cont02 li:nth-of-type(even) {
    flex-flow: row-reverse;
  }
  .block04 .cont02 li:nth-of-type(n + 2) {
    margin-top: 10.6rem;
  }
  .block04 .cont02 li .box_text {
    padding: 1.8rem 0;
    text-align: center;
  }
  .block04 .cont02 li .box_text em {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.5;
    /*   margin: 2rem 0 1.1rem;*/
  }
  .block04 .cont02 li .box_text p {
    padding: 0rem 0 1.475rem;
    text-align: center;
  }
  .block04 .cont02 li .box_text p:first-of-type {
    padding: 1.9rem 0 1.475rem;
  }
  .block04 .cont02 li .box_text p:last-of-type {
    padding: 0;
  }
  .block04 .cont02 .point05 .box_text p:last-of-type {
    padding: 2.5rem 0 0;
  }
  .block04 .cont02 li .box_text {
    padding: 0 2.5%;
    text-align: center;
  }
  .block04 .cont02 li .box_text h3 {
    margin-bottom: 2.5rem;
  }
  .block04 .cont02 li .box_text {
    width: 50%;
  }
  .block04 .cont02 li .box_img {
    width: 50%;
  }
  .block04 .cont02 li .box_img img {
    height: 100%;
    object-fit: cover;
  }
  /* 
block05
----------------------------------------------------------- */
  .block05 {
    padding: 9rem 0 7.6rem;
    /*box-shadow: 13px 0 19px rgba(0,0,0,.31);*/
  }
  .block05::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 50vw;
    height: 3.33vw;
    background-image: url("./library/images/block06_01.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -2;
  }
  .block05::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 50vw;
    height: 3.33vw;
    background-image: url("./library/images/block05_01.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -2;
  }
  .block05 h2 {
    text-align: center;
  }
  .block05 .cont01 p {
    padding: 3.875rem 3% 6.875rem;
    font-size: 1.125rem;
    width: 900px;
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
  }
  .block05 .cont02 li {
    display: flex;
    flex-flow: wrap;
    align-items: center;
  }
  .block05 .cont02 li .box_img01 {
    width: 49.5%;
  }
  .block05 .cont02 li .box_img02 {
    width: 50.5%;
  }
  .block05 .cont02 .period_n {
    margin-bottom: 5.0625rem;
  }
  /* 
block06
----------------------------------------------------------- */
  .block06 {
    padding: 8.25rem 0 7.1875rem;
    /*box-shadow: 13px 0 19px rgba(0,0,0,.31);*/
  }
  .block06 .inner {
    width: 1500px;
  }
  .block06 h2 {
    text-align: center;
    margin-bottom: 7.5rem;
  }
  .block06 .cont02 {
    display: flex;
    flex-flow: wrap;
  }
  .block06 .cont02 li {
    width: calc((100% - 4%) / 4);
    margin: 0 .5% 4.25rem;
  }
  .block06 .box_text {
    text-align: center;
    padding: 2.26rem 0 0;
  }
  .block06 .box_text h3 {
    font-size: 3.1rem;
    color: #e75735;
    position: relative;
    font-weight: normal;
    line-height: 1;
    padding-bottom: 1rem;
    margin-bottom: .875rem;
  }
  .block06 .box_text h3::before {
    content: "";
    display: block;
    position: absolute;
    bottom: -.5rem;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 9.984px 5.76px 0 5.76px;
    border-color: #e75635 transparent transparent transparent;
  }
  .block06 .box_text p {
    font-size: 1.16rem;
    font-weight: 700;
    letter-spacing: .05em;
  }
  .block06 .cont03 dl {
    display: flex;
    flex-flow: wrap;
    align-items: center;
    font-size: 1.875rem;
    font-weight: 700;
  }
  .block06 .cont03 dl:not(:last-of-type) {
    margin-bottom: 1.8rem;
  }
  .block06 .cont03 dd {
    padding: 0 4.3%;
    width: calc(100% - 97px);
    letter-spacing: .1em;
    line-height: 1.9;
  }
  /* 
block07
----------------------------------------------------------- */
  .block07 {
    padding: 8rem 0 12rem;
    /*  box-shadow: 13px 0 19px rgba(0, 0, 0, .31);*/
    background-image: url("./library/images/block07_bi.jpg");
    background-repeat: repeat;
    background-size: 200px 200px;
    overflow: hidden;
  }
  .block07 h2 {
    text-align: center;
    margin-bottom: 4.6875rem;
  }
  .block07::before {
    /*  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height:100%;
  background-image: url("./library/images/block07_bi.jpg");
  background-repeat: repeat;
  background-size: 200px 200px;
  background-position: center center;
  z-index: -1;
*/
  }
  .block07 .cont03 {
    background-color: #fff;
    border-radius: 3rem;
    padding: 5rem 7%;
    font-size: 1.125rem;
    filter: drop-shadow(0 8px 23px rgba(0, 0, 0, .21));
  }
  .block07 .text_q {
    position: relative;
    list-style: none;
    cursor: pointer;
  }
  .block07 .text_q::-webkit-details-marker {
    display: none;
  }
  .block07 .text_q::before, .block07 .answer::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 91px;
    height: 73px;
    background-image: url("./library/images/block07_01.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
  }
  .block07 .text_q span {
    border-bottom: 1px solid #d8d8d8;
    position: relative;
    display: block;
    margin: 0 2.5rem 0 6rem;
    padding: 2.6rem 0 2.6rem 2.5%;
  }
  .block07 .text_q::after {
    content: "+";
    font-size: 3rem;
    font-weight: normal;
    position: absolute;
    top: 50%;
    right: 0;
    transform-origin: center center;
    transform: translateY(-50%) rotate(0);
    transition: .3s transform ease;
    font-family: 'Noto Serif JP', serif;
  }
  /*.block07 details[open] summary::after {
  transform: translateY(-50%) rotate(45deg);
  transition: .3s transform ease;
}*/
  .block07 .text_qa .text_q.on::after {
    transform: translateY(-50%) rotate(45deg);
    transition: .3s transform ease;
  }
  .block07 .text_q::webkit-details-marker {
    position: absolute;
    color: transparent;
  }
  .block07 .answer {
    padding: 0rem 0;
    border-bottom: 1px solid #d8d8d8;
    position: relative;
  }
  .block07 .answer::before {
    background-image: url("./library/images/block07_02.png");
  }
  .block07 .answer {
    display: none;
  }
  .block07 .text_qa.open .answer {
    display: block;
  }
  .block07 .answer p {
    margin-left: 6rem;
    padding: 0 1% 0 2.5%;
    height: 0%;
  }
  .block07 .text_qa.open .answer {
    animation: open01 .3s ease-in-out;
    animation-fill-mode: forwards;
  }
  @keyframes open01 {
    0% {
      opacity: 0;
      padding: 0;
    }
    100% {
      opacity: 1;
      padding: 2.6rem 0 3.6rem;
    }
  }
  /* 
block08
----------------------------------------------------------- */
  .block08 {
    padding: 15.6rem 0 9.3rem;
    overflow: hidden;
  }
  .block08 h2 {
    text-align: center;
    margin-bottom: 6.8rem;
  }
  .block08::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-image: url("./library/images/block08_01.jpg");
    background-repeat: repeat-Y;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    z-index: -1;
  }
  .block08::after {
    content: "";
    display: block;
    position: absolute;
    top: -50px;
    right: 0;
    width: 100%;
    height: 50px;
    z-index: -1;
    filter: drop-shadow(0 0 24px rgba(0, 0, 0, .38));
    background-color: #000;
  }
  /*  .block08 .cont01 {
    margin: 0 calc(50% - 50vw);
    transform: translateY(3rem);
    opacity: 0;
    position: relative;
    z-index: 1;
  }
  .block08 .cont01.on {
    transform: translateY(1.25rem);
    opacity: 1;
    transition: .7s all ease;
  } */
  .block08 .cont01 {
    position: absolute;
    top: 3rem;
    left: 0;
    opacity: 0;
  }
  .block08 .cont01.on {
    top: 1.25rem;
    opacity: 1;
    transition: .7s all ease;
    z-index: 1;
  }
  .block08 .cont02 {
    padding: 6.25rem 5%;
    background-image: url("./library/images/block08_02.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    margin: 0 calc(50% - 50vw);
    box-shadow: 0px 21px 19px rgba(0, 0, 0, .31);
  }
  .block08 .cont02 h2 {
    color: #000;
    font-size: 1.3rem;
    letter-spacing: 2px;
    /*    margin-bottom: 4rem;
*/ margin-bottom: 0;
  }
  .block08 .cont02 h2 .dec05 {
    font-size: 3.4rem;
    color: #f87e1e;
  }
  .block08 .cont02 p {
    text-align: center;
    font-size: 1.125rem;
  }
  .block08 .cont04 {
    margin: 3.25rem 0 0;
    padding: 8.5rem 7%;
    background-color: #831206;
    box-shadow: 0px 12px 70px rgba(0, 0, 0, .31);
  }
  .block08 .cont04 .parts_tel {
    /*  text-align: center;
*/ color: #fff;
    position: relative;
    margin-bottom: 5rem;
    border-radius: 3rem;
    padding: 1rem 5%;
    transition: .3s all ease;
  }
  .block08 .cont04 .parts_tel:hover {
    position: relative;
    background-color: #fff;
    transition: .3s all ease;
  }
  .block08 .cont04 .parts_tel:hover a {
    color: #831206;
    transition: .3s all ease;
  }
  .block08 .cont04 .parts_tel .tel_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .block08 .cont04 .parts_tel i {
    font-size: 5rem;
    margin-right: 1rem;
  }
  .block08 .cont04 .parts_tel .dec01 {
    font-size: 4.6rem;
    line-height: 1.5;
  }
  .block08 .cont04 .parts_tel .dec02 {
    font-size: 1.875rem;
    width: 100%;
    text-align: center;
    display: inline-block;
  }
  .block08 .cont04 .parts_tel a {
    /*  position: absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
*/ text-align: center;
    color: #fff;
  }
  .block08 .cont04 .parts_form {}
  .block08 .cont04 .parts_form h3 {
    font-size: 2.5rem;
    text-align: center;
    margin: 0 0 5rem;
    color: #fff;
  }
  .block08 .cont04 .parts_form dl {
    display: flex;
    width: 1200px;
    max-width: 100%;
    margin: 0 auto 4.25rem;
  }
  .block08 .cont04 .parts_form dt {
    width: 300px;
    color: #fff;
    font-size: 1.375rem;
  }
  .block08 .cont04 .parts_form dt .text_red {
    color: #fffc06;
    font-size: 1rem;
    margin-left: .875rem;
  }
  .block08 .cont04 .parts_form dd {
    width: calc(100% - 300px);
    font-size: 1.125rem;
    color: #fff;
    font-weight: 700;
  }
  .block08 .cont04 .parts_form .kenmei00 {
    display: flex;
    flex-flow: column;
  }
  .block08 .cont04 .parts_form dd .kenmei01 {
    color: #fff;
  }
  .block08 .cont04 .parts_form dd .kenmei02 {
    margin-bottom: 1rem;
    display: block;
  }
  .block08 .cont04 .parts_form .subbtn {
    width: 280px;
    margin: 0 auto;
    position: relative;
    z-index: 0;
  }
  .block08 .cont04 .parts_form .subbtn::before {
    content: "";
    display: block;
    position: absolute;
    top: -5px;
    left: -5px;
    width: 100%;
    height: 100%;
    background-color: #000;
    z-index: -1;
    transition: .3s all ease;
  }
  .block08 .cont04 .parts_form .subbtn:hover::before {
    top: 0px;
    left: 0px;
    transition: .3s all ease;
  }
  .block08 .cont04 .parts_form .subbtn::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateX(-50%);
    width: 86px;
    height: 5px;
    background-image: url("./library/images/icon_arrow.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    transition: .3s all ease;
  }
  .block08 .cont04 .parts_form .subbtn:hover::after {
    left: 5%;
  }
  .block08 .cont04 .parts_form .mw_submit {
    padding: 1rem 5%;
    background-color: transparent;
    border-radius: 0;
    border: 1px solid #fff;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 400;
    letter-spacing: .3em;
  }
  .block08 .cont04 .parts_form .mw_txt {
    font-size: 1rem;
  }
  .block08 .cont04 .parts_form .mw_txt.set01 {
    width: 150px;
    margin: 0 1rem .5rem 0;
  }
  .block08 .cont04 .parts_form .setb_01 {
    width: 150px;
    margin-bottom: .5rem;
  }
  .block08 .cont04 .parts_form .ad_no {
    display: flex;
    flex-flow: wrap;
  }
  .block08 .cont04 .parts_form .ad_area {
    margin-bottom: .5rem;
  }
  .block08 .cont04 .set_address .set02 {
    margin-bottom: .5rem;
  }
  .block08 .mw_wp_form .error {
    background-color: #000;
    padding: .2rem .3rem;
    display: inline;
  }
  /*.block011{}  ----------------*/
  .block11 {
    padding: 11.5rem 0 0 0;
  }
  .block11 .inner, .block13 .inner {
    width: 950px;
  }
  .block11 .cont01, .block13 .cont01 {
    text-align: center;
    margin-bottom: 3.9375rem;
  }
  .block11 dl, .block13 dl {
    display: flex;
    flex-flow: wrap;
    font-size: 1.25rem;
    line-height: 1.5;
    letter-spacing: .1em;
    padding: 2.65rem 0;
    border-bottom: 1px solid #d9d9d9;
  }
  .block11 dl:last-of-type, .block13 dl:last-of-type {
    border-bottom: 0;
  }
  .block11 dl .dec01, .block13 dl .dec01 {
    font-size: 2.18rem;
    font-weight: 700;
  }
  .block11 dl .dec02, .block13 dl .dec02 {
    font-size: 1rem;
    color: #f31010;
    display: block;
  }
  .block11 dt, .block13 dt {
    font-size: 2.18rem;
    font-weight: 700;
    width: 50%;
    text-align: center;
  }
  .block11 dd, .block13 dd {
    width: 50%;
    text-align: right;
    padding-right: 3.57%;
  }
  /*.block012{}  ----------------*/
  .block12 {
    position: relative;
    z-index: 0;
  }
  .block12::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("./library/images/block12_d_title01_dec.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: -1;
  }
  .block12 .box_img {
    padding: 11.5rem 0;
  }
  .block12 .inner {
    width: 950px;
  }
  /*.block13{}  ----------------*/
  .block13 {
    padding: 0 0 6.275rem;
  }
  /*.block14{}  ----------------*/
  .block14 {
    padding: 7.625rem 0 11.8rem;
    background-color: #fcfcfa;
    position: relative;
    margin-bottom: 2rem;
  }
  .block14::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 1px;
    right: 0;
    width: 100%;
    height: 50px;
    z-index: -1;
    filter: drop-shadow(0 0 24px rgba(0, 0, 0, .38));
    background-color: #000;
  }
  .block14 .cont01 {
    margin-bottom: 6.25rem;
    text-align: center;
  }
  .block14 .cont02 li {
    display: flex;
    flex-flow: wrap;
  }
  .block14 .cont02 li:nth-of-type(n+2) {
    margin-top: 6.25rem;
  }
  .block14 .cont02 .box_img {
    width: 50%;
    position: relative;
  }
  .block14 .cont02 .box_img .img_no_a {
    position: absolute;
    top: -89px;
    left: -89px;
  }
  .block14 .cont02 .box_text {
    width: 50%;
    padding: .8125rem 1.2%;
  }
  .block14 .title_a14 {
    font-size: 2.18rem;
    line-height: 1;
    letter-spacing: .1em;
    padding-bottom: 1.875rem;
    margin-bottom: 1.875rem;
    position: relative
  }
  .block14 .title_a14::before {
    content: "";
    display: block;
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 85px;
    height: 9px;
    background-image: linear-gradient(to right, #a70c02 0%, #a70c02 10.5%, #fff 10.5%, #fff 27%, #fff 27%, #a70c02 27%);
  }
  .block14 .in_text {
    line-height: 2.3;
    letter-spacing: .1em;
  }
  /*.block15{}  ----------------*/
  .block15 {
    position: relative;
    padding-bottom: 12.5rem;
  }
  .block15::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-image: url("./library/images/block08_01.jpg");
    background-repeat: repeat-Y;
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    z-index: -1;
  }
  .block15 .inner {
    padding: 3.3rem 0 8.75rem;
    position: relative;
    z-index: 0;
  }
  .block15 .inner::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 120%;
    height: 100%;
    background-color: #fff;
    z-index: -1;
    box-shadow: 0px 21px 19px rgba(0, 0, 0, .31);
  }
  .block15 .inner p {
    margin-bottom: 2rem;
    letter-spacing: .1em;
    line-height: 1.8;
  }
  .block15 .inner p:last-of-type {
    margin-bottom: 0;
  }
  .block15 .cont01 {
    text-align: center;
    margin-bottom: 5.6rem;
  }
  .block15 .cont02 {
    display: flex;
    flex-flow: wrap;
    align-items: flex-end;
    margin-bottom: 2rem;
  }
  .block15 .cont02 .box_img {
    width: 460px;
    text-align: right;
  }
  .block15 .cont02 .box_img p {
    font-size: 1.187rem;
    padding-top: 2rem;
  }
  .block15 .cont02 .box_img p span {
    display: inline-block;
  }
  .block15 .cont02 .box_text {
    width: calc(100% - 460px);
    padding-right: 3.7%;
  }
  /*.block16{}  ----------------*/
  .block16 .inner {
    width: 100%;
    max-width: 100%;
    display: flex;
    flex-flow: wrap;
  }
  .block16 .box_img {
    width: 50%;
  }
  .block16 .box_img img {
    height: 100%;
    object-fit: cover;
  }
  .block16 .box_text {
    width: 50%;
    background: #930f04;
    padding: 2.5rem 2% 3.625rem 3.4%;
    color: #fff;
    font-size: 1.25rem;
    box-shadow: 0px 21px 19px rgba(0, 0, 0, .31);
  }
  .block16 .box_text .cont01 {
    text-align: center;
    margin-bottom: 1.4rem;
  }
  .block16 .box_text dl {
    display: flex;
    flex-flow: wrap;
    padding: 1.34rem 0;
    border-bottom: 2px solid #fff;
  }
  .block16 .box_text dl:last-of-type {
    border-bottom: 0;
  }
  .block16 .box_text dt {
    width: 220px;
    padding: 0 1.7%;
  }
  .block16 .box_text dd {
    width: calc(100% - 220px);
    padding: 0 1%;
  }
  .block16 .box_text dd a {
    color: #fff;
  }
  .block16 .box_text dd .dec01 {
    display: inline-block;
  }
  .block16 .box_text dd .dec02 {
    display: block;
  }
  /*.contact_bar{}  ----------------*/
  .contact_bar {
    position: relative;
    z-index: 0;
    transition: .7s all ease;
    opacity: 0;
    padding: 5px 0;
  }
  .contact_bar.open {
    opacity: 1;
    bottom: 0;
    left: 0;
    position: -webkit-sticky;
    position: -moz-sticky;
    position: -o-sticky;
    position: -ms-sticky;
    position: sticky;
    transition: .3s all ease;
    z-index: 999;
  }
  .contact_bar.open.run {
    opacity: 0;
  }
  .contact_bar::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /*    background-image: linear-gradient(transparent 40%, #ff852a 40%);*/
    background-color: #ff852a;
    z-index: -1;
  }
  .contact_bar .inner {
    width: 100%;
    display: flex;
    flex-flow: wrap;
    align-items: center;
    justify-content: center;
  max-width: 1400px;
  }
  .contact_bar a {
    display: block;
  }
  .contact_bar .cont03 {
    padding: 0 0 0 10px;
  display: flex;  
  }

.contact_bar .cont03 img{
  margin-right: 5px;
}

  .contact_bar .cont02 a img, .contact_bar .cont03 .link_a img, .contact_bar .cont03 .link_b img, .contact_bar .cont04 img, .contact_bar .cont05 img {
    transition: .3s all ease;
  }
  .contact_bar .cont02 a:hover img, .contact_bar .cont03 .link_a:hover img, .contact_bar .cont03 .link_b:hover img, .contact_bar .cont04 a:hover img, .contact_bar .cont05 a:hover img {
    transform: scale(.9);
  }
/*  .contact_bar .cont04 {
    padding: 0 0 0 10px;
  }*/
  .contact_bar .cont04 img {
    width: 60px;
    height: 60px;
  }
  .contact_bar .cont05 {
    display: none;
    justify-content: space-around;
    align-items: center;
  }
  .contact_bar .cont05 a:nth-of-type(n + 2) {
    margin: 0 2%;
  }
  .contact_bar.set_sp {
    display: none;
    padding: 12px 0 0 0;
  }
  .contact_bar.set_sp .inner {
    flex-flow: column;
  }
  .contact_bar .cont_a {
    width: 100%;
    border: 3px solid #fff;
    border-radius: 16px;
    margin-bottom: 8px;
  }
  .contact_bar .cont_a a {
    padding: .5rem 2rem;
    text-align: center;
    font-size: 25px;
    font-weight: 700;
    color: #fff;
    line-height: 1.5;
  }
  .contact_bar .cont_a i {
    margin-right: 10px;
    transform: scale(-1, 1);
  }
  .contact_bar .cont_a .dec01 {
    display: block;
    font-size: 14px;
    font-weight: normal;
    line-height: 1;
  }
  .contact_bar .cont_b {
    width: 100%;
    display: flex;
    align-items: center;
  }
  .contact_bar .cont_b .link_a {
    width: 150px;
    text-align: center;
  }
  .contact_bar .cont_b .link_b {
    width: calc(100% - 300px - 10px / 2);
    text-align: center;
    border: 3px solid #fff;
    border-radius: 16px;
    padding: .5rem 1rem;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    margin-left: 5px;
  }
  .contact_bar.set_sp a {
    transition: .3s all ease;
    border-radius: 16px;
  }
  .contact_bar.set_sp a:hover {
    background-color: rgba(0, 0, 0, .5);
  }
  .link_z {
    opacity: 0;
    display: none;
    position: fixed;
    top: 5px;
    right: 5px;
    width: 60px;
    height: 60px;
    border: 3px solid #fff;
    border-radius: 10px;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    background-color: #ff852a;
    transition: .3s all ease;
  }
  .link_z.open {
    opacity: 1;
  }
  .link_z:hover {
    background-color: #7f4215;
  }
  /*  .contact_bar .cont_b .link_b:last-of-type {
    margin-left: 10px;
  }
*/
  /* .contact_bar .cont04 {
    width: 50%;
      margin:0 auto;
text-align: center;
padding: .5rem 0 1rem;
      
  }

  .contact_bar .cont04 a {
text-align: center;
padding: .3rem 0;
      background-color: #a70c02;
      border-radius: 5px;
      filter: drop-shadow(0 5px 0 #000);
      color:#fff; font-weight: 700;
       transition: .3s all ease;
  }


*/
  /* 
Footer
----------------------------------------------------------- */
  footer {
    display: flex;
    justify-content: center;
    padding: 6rem 0 4.3rem;
    text-align: center;
    color: #000;
  }
  footer h2 {
    font-size: 1.25rem;
    font-style: normal;
    padding: 1.25rem 0 1.3rem;
  }
  footer a {
    font-size: 1rem;
    color: #000;
    font-style: normal;
  }
  footer .footer_add {
    font-size: 1rem;
    color: #000;
    font-style: normal;
    letter-spacing: .1em;
  }
  footer i {
    margin-right: .5rem;
  }
  @media screen and (max-width:1500px) {
    .top_fv {
      display: block;
    }
    .top_fv .cont01 {
      margin: 0 auto 0 3%;
      position: relative;
      top: calc(8rem + 5vw);
      width: 97%;
    }
    .top_fv .cont01 img {
      width: 65vw;
    }
    .top_fv .cont02 {
      justify-content: space-around;
    }
    .block10::before {
      left: -20%;
    }
    .block10::after {
      right: -20%;
    }
    .block10 .cont01 img {
      width: 60vw;
    }
    .block10 .cont03 img {
      width: 300px;
    }
    .block10 .cont03 {
      right: -5%;
    }
    .block08 .cont01 img {
      width: 60vw;
    }
    .block14 .cont02 .box_img .img_no_a {
      left: 0;
    }
  }
  @media screen and (max-width:1200px) {
    .block10 .cont02 h2 .dec01 {
      font-size: 5.5vw;
    }
    .block10 .cont02 h2 .dec011 {
      font-size: 4.0vw;
    }
    .block03 .cont01 h2::before {
      transform: scale(.6);
      transform-origin: left bottom;
    }
    .block03 .cont01 h2::after {
      transform: scale(.6);
      transform-origin: right bottom;
    }
    .block16 .box_text {
      width: 100%;
      padding: 2.5rem 2% 3.625rem 2%;
    }
    .block16 .box_img {
      width: 30%;
      position: absolute;
      bottom: -18vw;
      right: 0;
      transform: rotate(10deg);
      box-shadow: 0px 21px 19px rgba(0, 0, 0, .31);
    }
  }
  @media screen and (max-width:1024px) {
    .top_fv::before {
      background-position: center right 35%;
    }
    .block10::before {
      left: -35%;
    }
    .block10::after {
      right: -35%;
    }
    .block10 .cont02 {
      padding: 10.6rem 0 5.5rem;
    }
    .block10 .cont02 h2 {
      margin-bottom: 12vw;
    }
    .block10 .cont02 .text0a {
      margin-bottom: 8vw;
      font-size: 2vw;
    }
    .block10 .cont02 .text0b, .block10 .cont02 .text0c {
      font-size: 1.6vw;
    }
    .block10 .cont03 img {
      width: 200px;
    }
    .block10 .cont03 {
      bottom: 10%;
      right: -0%;
    }
    #cop {
      justify-content: center;
    }
    .contact_bar .cont03 {
      padding: 10px 0 0 0;
      display: flex;
      justify-content: center;
      width: 100%;
    }
    .contact_bar .cont03 a {
      margin: 0 2%;
    }
  }
  @media screen and (max-width:900px) {
    /*  .block04 .cont02 .point02, .block04 .cont02 .point03, .block04 .cont02 .point04 {
    width: calc((100% - 10%) / 2);
    margin: 0 2.5% 2rem;
  }*/
    .top_fv {
      height: 100vh;
    }
    .block06 .cont02 li {
      width: calc((100% - 4%) / 2);
      margin: 0 1% 3rem;
    }
    .block04 .cont02 li:nth-of-type(2n) {
      flex-flow: column;
    }
    .block06 .cont02 li .box_img {
      text-align: center;
    }
    .block08 .cont04 .parts_form dl {
      flex-flow: wrap;
    }
    .block08 .cont04 .parts_form dt {
      width: 100%;
      margin-bottom: .5rem;
    }
    .block08 .cont04 .parts_form dd {
      width: 100%;
    }
    .block04 .cont02 li .box_img {
      width: 100vw;
      margin: 0 calc(50% - 50vw);
    }
    .block04 .cont02 li .box_text {
      width: 80%;
      margin: 0 auto 1rem;
    }
    .block04 .cont02 li .box_text {
      padding: 2.3rem 1.5rem 0rem 1.5rem;
    }
    .block04 {
      padding: 6rem 0 6rem;
    }
    .block04 h2 {
      text-align: center;
      margin: 0 5% 5.6rem;
    }
    .block04 .cont01 p {
      padding: 3rem 5% 7rem;
      font-size: 1rem;
      margin: 0 auto;
    }
    .block15 .cont02 .box_text {
      width: 35rem;
      padding-right: 0;
      margin: 0 auto;
    }
    .block15 .cont02 .box_img {
      width: 35rem;
      padding-right: 0;
      margin: 0 auto 2rem;
      text-align: center;
      order: -1;
    }
    .block15 .cont03 {
      width: 35rem;
      margin: 0 auto;
    }
    .block15 .inner::before {
      width: 100%;
    }
    .block16 .box_img {
      width: 100%;
      position: absolute;
      bottom: auto;
      right: 0;
      top: 0;
      z-index: -1;
      height: 100%;
      transform: rotate(0);
      box-shadow: 0px 21px 19px rgba(0, 0, 0, 0);
    }
    .block16 .box_text {
      background: rgba(147, 15, 4, .8);
    }
  }
  @media screen and (max-width:800px) {
    .block08 .cont04 .parts_tel i {
      font-size: 4rem;
    }
    .block08 .cont04 .parts_tel .dec01 {
      font-size: 3.6rem;
    }
    .block03 .cont02 li, .block03 .cont02 li:nth-of-type(2n) {
      width: 80%;
      margin: 0 auto 3rem;
    }
    .block11 dt, .block13 dt {
      width: 100%;
      margin-bottom: 1rem;
    }
    .block11 dd, .block13 dd {
      width: 100%;
      text-align: center;
    }
    .block14 .cont02 .box_img {
      width: 90%;
      margin: 0 auto 1rem;
      text-align: center;
    }
    .block14 .cont02 .box_text {
      width: 90%;
      margin: 0 auto;
    }
    .block15 .cont02 .box_img p {
      padding-top: 1rem;
    }
    /*    .contact_bar .cont02 {
      width: 50%;
    }
    .contact_bar .cont01 {
      width: 50%;
    }
*/
    .contact_bar {
      display: none;
    }
    .contact_bar.set_sp {
      display: block;
    }
  }
  @media screen and (max-width:700px) {
    /*.contact_bar .cont04 {
    width:30%;
    display: flex;
    flex-flow: column;
    align-items: flex-end;
    padding: 10px 0 0 0;
    }
*/
    /*.contact_bar .cont04 a {
    margin:0 10px;
}
   .contact_bar .cont03 {
    order:3;
}   
*/
    /* .contact_bar .cont03 {
    width: 60%;
     flex-flow: column;
     align-items: flex-start;
}   
    
*/
    .contact_bar .cont03, .contact_bar .cont04 {
      display: none;
    }
    .contact_bar .cont05 {
      display: flex;
    }
  }
  @media screen and (max-width:640px) {
    .sp640 {
      display: inline-block;
    }
    .pc640 {
      display: none;
    }
    .top_fv .cont02 {
      bottom: 10%;
      right: 0%;
    }
    .top_fv .cont01 {
      top: calc(8rem + 30vw);
    }
    .top_fv .cont01 img {
      width: 90vw;
    }
    .block10 .cont02 {
      padding: 8rem 0 3.6rem;
    }
    .block10 .cont03 {
      transition-delay: 0s;
    }
    .block10::before {
      left: -35%;
      opacity: .4;
      width: 400px;
    }
    .block10::after {
      right: -35%;
      opacity: .4;
      width: 400px;
    }
    .block10 .cont03 img {
      width: 150px;
    }
    .block10 .cont02 .text0a {
      margin-bottom: 8vw;
      font-size: .875rem;
    }
    .block10 .cont02 .text0b, .block10 .cont02 .text0c {
      font-size: .75rem;
    }
    .block02 {
      padding: 5rem 0 5rem;
    }
    .block03::before {
      background-attachment: local;
    }
    .block03 .cont01 {
      height: 150px;
      margin-bottom: calc(54px + 3.5rem);
    }
    .block03 .cont01 h2::before {
      transform: scale(.3);
    }
    .block03 .cont01 h2::after {
      transform: scale(.3);
    }
    /*.block03 .cont02 li,.block03 .cont02 li:nth-of-type(2n) {
    width: 80%;
    margin: 0 auto 2rem;
}*/
    .block03 .cont02 li .point_n .dec01 {
      font-size: 1.25rem;
    }
    .block03 .cont02 li .point_n {
      font-size: .95rem;
    }
    .block04 .cont02 li:nth-of-type(n+2) {
      margin-top: 6rem;
    }
    .block04 .cont02 li .box_text {
      width: 95%;
      padding: 2.3rem 2.5% 0rem;
    }
    .block04 .cont02 li .box_text {}
    .block04 .cont02 li .box_text p {
      padding: 0rem 0 1rem;
    }
    .block04 .cont02 li .box_text h3 {
      margin-bottom: 1rem;
    }
    .block05 .cont02 .period_n {
      margin-bottom: 2rem;
    }
    .block05 {
      padding: 6rem 0 5.5rem;
    }
    .block06 .cont02 li {
      width: 80%;
      margin: 0 auto 3rem;
    }
    .block06 .cont03 dt {
      padding: 0 5%;
      width: 100%;
      text-align: center;
    }
    .block06 .cont03 dd {
      padding: 0 5%;
      width: 100%;
      font-size: 1.5rem;
    }
    .block08 .cont02 h2 {
      font-size: 6vw;
      /* margin-bottom: 9vw;*/
    }
    .block08 .cont02 h2 .dec05 {
      font-size: 8vw;
    }
    .block08 .cont02 p {
      font-size: rem;
    }
    .block08 .cont01.on {
      transform: translateY(6rem);
    }
    .block08 .cont01 {
      transform: translateY(10rem);
    }
    .block07 {
      padding: 6rem 0 4rem;
    }
    .block08 .cont04 .parts_tel i {
      font-size: 3rem;
    }
    .block08 .cont04 .parts_tel .dec01 {
      font-size: 2.6rem;
    }
    .block08 .cont04 .parts_tel .dec02 {
      font-size: 1.4rem;
    }
    .block08 .cont04 .parts_form dl {
      margin: 0 auto 2rem;
    }
    .block08 .cont04 .parts_form h3 {
      font-size: 2.5rem;
    }
    .block08 .cont04 .parts_tel {
      margin-bottom: 3rem;
    }
    .block06 {
      padding: 0rem 0 10rem;
    }
    .block05 h2 {
      text-align: center;
      margin: 0 5%;
    }
    .block05 h2 img {
      width: 48vw;
    }
    .block07 h2 img {
      width: 48vw;
    }
    .block06 .cont02 {
      margin-bottom: 3rem;
    }
    .block03 .cont02 li .point_f {
      font-size: 1rem;
    }
    .block05 .cont02 li .box_img01 {
      width: 80%;
      margin: 0 auto 1rem;
    }
    .block05 .cont02 li .box_img02 {
      width: 80%;
      margin: 0 auto 3rem;
    }
    .block03 .cont02 li .point_n::before {
      top: -2.5rem;
      left: 50%;
      width: 50px;
      height: 45px;
    }
    .block06 h2 {
      margin-bottom: 3rem;
    }
    .block11 {
      padding: 8rem 0 0 0;
    }
    .block14 .cont02 .box_img .img_no_a img {
      transform: scale(.6);
    }
    .block14 .cont02 .box_img .img_no_a {
      left: -36px;
    }
    .block12 .box_img {
      padding: 3rem 0;
    }
    .block11 dt, .block13 dt {
      font-size: 1.7rem;
    }
    .block11 dl, .block13 dl {
      font-size: 1rem;
    }
    .block11 dt, .block13 dt {
      margin-bottom: 0rem;
    }
    .block11 .cont01, .block13 .cont01 {
      margin-bottom: 1rem;
    }
    .block15 .cont02 .box_text {
      width: 80%;
    }
    .block15 .cont03 {
      width: 80%;
    }
    .block15 h2 img {
      width: 60vw;
    }
    .block16 h2 img {
      width: 40vw;
    }
    .block16 .box_text dd {
      width: 100%;
      padding: 0 3%;
    }
    .block11 {
      padding: 5rem 0 0 0;
    }
    .block13 {
      padding: 2rem 0 6.9rem;
    }
    .block04 .cont02 li .box_img {
      height: 300px;
      text-align: center;
    }
    .block16 .box_text {
      width: 100%;
      padding: 2.5rem 5% 3.625rem 5%;
    }
    .block14 .title_a14 {
      font-size: 1.7rem;
    }
    .block03 .cont02 {
      display: none;
    }
    .block03 .cont02.set_m {
      display: flex;
    }
    .contact_bar .cont01 {
      width: 30%;
    }
    .contact_bar .cont02 {
      flex-shrink: 2;
      width: 55%;
    }
    .contact_bar .cont04 img {
      width: 60px;
      height: 60px;
    }
    .contact_bar .cont_a a {
      padding: 5px 10px;
    }
    .contact_bar .cont_b .link_a {
      width: 16.666%;
    }
    .contact_bar .cont_b .link_b {
      width: calc(66.666% - 5px);
      /*      display: flex;
      justify-content: center;
      align-items: center;
      align-self: stretch;
      padding: 5px 10px;*/
    }
    .contact_bar.set_sp {
      padding: 8px 10px;
    }
    .contact_bar .cont_b .link_b.pc640 {
      display: none;
    }
    .link_z {
      display: flex;
    }
    .contact_bar .cont_a {
      margin-bottom: 4px;
    }
.top_fv .cont02 {
    bottom: 0%;
    right: 0%;
}      
    .top_fv .cont02 li {
    width: 30%;
    margin: 0 1% 0rem;
}  
    .top_fv .cont02 li:first-of-type {
    margin: 0 1% 0rem 10%;
}  
    .top_fv .cont02 li:nth-of-type(2) {
    margin: 0 25% 0rem 1%;
}  
    .top_fv .cont02 li:nth-of-type(3) {
    margin: 0 1% 0rem 25%;
}  
    .top_fv .cont02 li:nth-of-type(4) {
    margin: 0 10% 0rem 1%;
}  
      
      
      
      
      
      
      
      
      
      
      
  }
  @media screen and (max-width:500px) {
    .sp500 {
      display: inline-block;
    }
    .pc500 {
      display: none;
    }
    .block08 .cont04 .parts_form h3 {
      line-height: 1.2;
    }
  }
  @media screen and (max-width:450px) {
    .sp450 {
      display: inline-block;
    }
    .pc450 {
      display: none;
    }
    .top_fv .cont01 {
      top: 33vh;
    }
    .block10::before {
      left: -45%;
    }
    .block10::after {
      right: -45%;
    }
    .block10 .cont02 .text0a {
      margin-bottom: 8vw;
    }
    .block10 .cont02 .text0b, .block10 .cont02 .text0c {}
    .block02 .cont02 li {
      width: 80%;
      margin: 0 auto 1rem;
    }
    .block10 .cont02 {
      padding: 6rem 0 3.6rem;
    }
    .block07 .text_q::before, .block07 .answer::before {
      width: 46px;
      height: 37px;
    }
    .block07 .text_q span {
      margin: 0 2.5rem 0 3rem;
      padding: 1.6rem 0 1.6rem 2.5%;
      font-size: 1rem;
    }
    .block07 .answer p {
      margin-left: 3rem;
      padding: 0 1% 0 2.5%;
      font-size: .9rem;
    }
    .block05 .cont01 p {
      padding: 3rem 3% 5rem;
      font-size: 1.125rem;
      width: 900px;
      max-width: 100%;
      margin: 0 auto;
    }
    .block02 .cont01 {
      margin: 0 5% 2.3rem;
    }
    @keyframes open01 {
      0% {
        opacity: 0;
        padding: 0;
      }
      100% {
        opacity: 1;
        padding: 1.6rem 0 2.6rem;
      }
    }
    .block03 .cont02 li, .block03 .cont02 li:nth-of-type(2n) {
      width: 100%;
    }
    .block04 {
      padding: 4rem 0 4rem;
    }
    .block07 h2 {
      text-align: center;
      margin-bottom: 3rem;
      padding: 0 5%;
    }
    .block07 .cont03 {
      padding: 2rem 7%;
    }
    .block07 {
      padding: 3rem 0 3rem;
    }
    .block08 .cont04 .parts_tel .dec01 {
      font-size: 2rem;
    }
    .block08 .cont04 .parts_tel i {
      font-size: 2.5rem;
      margin-right: .5rem;
    }
    .block08 .cont04 .parts_tel .dec02 {
      font-size: 1.2rem;
    }
    .block08 .cont04 .parts_form h3 {
      font-size: 2rem;
      margin: 0 0 3rem;
    }
    .block08 .cont04 .parts_form dt {
      font-size: 1.125rem;
    }
    .block08 .cont04 .parts_form dt .text_red {
      font-size: .875rem;
      margin-left: .5rem;
    }
    .block08 .cont04 {
      padding: 4rem 7%;
    }
    .block08 .cont04 .parts_form .subbtn::after {
      width: 50px;
      background-position: center right;
    }
    .block04 .cont02 li .box_text p {
      text-align: left;
    }
    .block06 .box_text h3 {
      font-size: 2.4rem;
    }
    .block06 {
      padding: 0rem 0 7rem;
    }
    .block05 {
      padding: 3rem 0 0;
    }
    #cop {
      font-size: 0.8em;
    }
    .block04 .cont01 p {
      font-size: 1rem;
      margin: 0 auto;
      padding: 3rem 5% 5rem;
    }
    .block05 .cont02 li .box_img02 {
      width: 95%;
    }
    .block03 .cont02 li .point_f {
      font-size: .875rem;
    }
    .block14 .cont02 .box_img .img_no_a img {
      transform: scale(.4);
    }
    .block14 .cont02 .box_img .img_no_a {
      left: -52px;
    }
    .block12 .box_img {
      padding: 1rem 0;
    }
    .block13 {
      padding: 2rem 0 4rem;
    }
    .block14 {
      padding: 3rem 0 5rem;
    }
    .block11 dl, .block13 dl {
      padding: 1.5rem 0;
      border-bottom: 1px solid #d9d9d9;
    }
    .block15 .cont01 {
      margin-bottom: 3.6rem;
    }
    .block16 .box_text dl {
      padding: .8rem 0;
    }
    .block08 {
      padding: 0 0 5rem;
    }
    .block15 {
      padding-bottom: 7rem;
    }
    .block11 h2 img {
      width: 80vw;
    }
    .block13 h2 img {
      width: 58vw;
    }
    .block14 h2 img {
      width: 58vw;
    }
    .block11 {
      padding: 5rem 0 2rem;
    }
    .block05 h2 img {
      width: 48vw;
    }
    .contact_bar .cont04 a {
      font-size: .8rem;
    }
    .block16 .box_text dt {
      font-size: 1rem;
    }
    .block16 .box_text dd {
      font-size: .875rem;
    }
    .contact_bar .cont04 {
      width: 20%;
    }
    .contact_bar .cont03 {
      width: 80%;
      align-items: center;
    }
    .block08 .cont01 {
      transform: translateY(3rem);
    }
    .block08 .cont01.on {
      transform: translateY(0);
    }
          .block08 .cont04 .parts_tel i {
      font-size: 1.9rem;
    }
    .block08 .cont04 .parts_tel .dec01 {
      font-size: 1.7rem;
    }
    .block08 .cont04 .parts_tel {
      padding: 1rem 0;
    }
  }
  @media screen and (max-width:350px) {
    .sp350 {
      display: inline-block;
    }
    .top_fv .cont01 {
      top: calc(5rem + 30vw);
    }
    .block10::before {
      left: -55%;
    }
    .block10::after {
      right: -55%;
    }
    .block03 .cont01 {
      height: 120px;
      margin-bottom: calc(54px + 1.5rem);
    }
    .block03 .cont01 h2::before {
      transform: scale(.2);
    }
    .block03 .cont01 h2::after {
      transform: scale(.2);
    }
    .block04 .cont02 .point02, .block04 .cont02 .point03, .block04 .cont02 .point04 {
      width: 100%;
    }
    .block04 .cont02 .point01 .box_text {
      width: 100%;
    }
    .block06 .cont03 dd {
      font-size: 1.25rem;
    }
    .block08 .cont02 p {
      font-size: .9rem;
    }
    .block03 .cont02 li .point_n .dec01 {
      font-size: 1.15rem;
    }
    .block10 .cont02 {
      padding: 5rem 0 3.6rem;
    }
    .block05 h2 img {
      width: 55vw;
    }
    .block07 h2 img {
      width: 65vw;
    }
    .block11 h2 img {
      width: 58vw;
    }
    .block13 h2 img {
      width: 80vw;
    }
    .block15 h2 img {
      width: 70vw;
    }
    .block14 h2 img {
      width: 80vw;
    }
    .contact_bar .cont_b .link_b {
      font-size: 14px;
    }
    .contact_bar .cont_a a {
      padding: .2rem .5rem .5rem;
      font-size: 22.5px;
    }
    .contact_bar .cont_a .dec01 {
      font-size: 12px;
    }


      
      
      
      
  }