@charset "UTF-8";
/* CSS Document */
@media print, screen and (max-width : 1399px){
  .key_wp{ background-position: 140% bottom; }
  .keyin_01 p.ttl{ font-size: 3vw;}
  .keyin_01 ul{ font-size: 2vw;}
  /* .keyin_02{ font-size: 2.5vw;} */
}
@media screen and (max-width:1100px){
    .keyin_02{ font-size: 2.5vw;}
    .svg_edge_text > svg > use {
     transform: translateY(65%);}
}/* ==========max-width:1100px========= */
/*ブレイクポイント*/
@media screen and (max-width:900px){
  .sec-02-box p.cmnt{ font-size: .87em;}
}/* ==========max-width:900px========= */

/*タブレット*/
@media screen and (max-width: 769px) {
  body{ font-size: 4vw; max-width: 100vw; overflow-x: hidden;}
  .sp-br{ display: none;}
  .sp_br1{ display: none;}
  .sp_br2{ display: none;}
  .pc-br{ display: inherit;}
  .inner{ padding: 2.5vw;}
  a[href^="tel:"] {pointer-events: auto;}
  
  img{width: 100%;}
  
  .main_key .inner{ max-width: none; width: 100%; margin: 5vw 0; padding: 0;}
  .sec-06 .inner{ max-width: none; width: 100%; margin: 5vw 0; padding: 0;}
  .key_wp{ background-position: 120% bottom; padding: 5vw 5vw 10vw; background-size: 67%;}

  .keyin_01{ padding: 5vw;}
  .keyin_01 p.ttl{ font-size: 1.42em;}
  .keyin_01 ul{ font-size: 1em;}
  .keyin_02{ font-size: 1.2em; max-width: 64%; margin-top: 10vw;}
  
  /*cv*/
  .sec-cv_box{ width: 90%; padding: 5vw 2.5vw;}
  .num_block{ font-size: 2.25em;}
  .mail_block a{ font-size: .7em; padding: .88em;}
  
  .sec-02-block{ padding: 8vw 0 0; overflow: hidden; width: 100vw;}
  h2.line_ttl{ font-size: 1.32em; width: 95%; margin: 0 auto;}
  .sec-02-box p.img{ position: absolute; bottom: 0; right: -12%; margin: 0; width: 58%; overflow: hidden;}
  .sec-02-box p.cmnt{ width: 70%; padding: 5vw; font-size: .92em;}
  
  .sec-03_block{ padding-top: 8vw;}
  .sec-03_block .inner{ padding-bottom: 10vw;}
  h3.review p{ font-size: 1.78em;}
  .sec-03-box{ margin-top: 3vw; padding-top: 30px;}
  .sec-03-box > div{ width: 100%; margin-bottom: 9vw;}
  
  .sec-03-box > div:nth-child(even) .inttl{ background: repeating-linear-gradient(-45deg, #e2889e 0, #e2889e 10px, #e699ac 10px, #e699ac 20px);}
  .sec-03-box > div:nth-child(odd) .inttl{background: repeating-linear-gradient(-45deg, #3ea98f 0, #3ea98f 10px, #1c9a7b 10px, #1c9a7b 20px);
  }

  .sec-04_block{ padding-top: 8vw; margin-bottom: 8vw;}
  h2.bdr_ttl p{ font-size: 1.3em;}
  h2.bdr_ttl p span:nth-child(1){font-size: .95em;}
  .in_head{ width: 100%; margin: 8vw 0;}
  .in_head p.thum{ width: 35%;}
  .in_head .prof_box p{ font-size: 1.24em; padding: 1em;}
  .sec-04_block .in_cmnt{ width: 92%;}
  
  .sec-05_block{ padding: 8vw 0;}
  h3.w_ttl{ margin-bottom: 8vw;}
  h3.w_ttl p{ font-size: 1.44em;}
  .sec-05_box{ width: 100%; align-items: flex-start; padding: 8vw 0;}
  .sec-05_box .thum{ width: 25%;}
  .sec-05_box .intxt{ width: 75%;}
  .in-cv{ padding-top: 8vw;}
  .in-cv > .sec-cv_box{ width: 95%;}
  
  footer{ padding: 1em 0 2em;}

  .footer_text_a{ margin: 2% auto 4%; font-size: 1.3em;}
  
}

@media screen and (max-width:600px){
  .keyin_02{ max-width: 66%;}
}/* ==========max-width:600px========= */

@media screen and (max-width:414px){
  .keyin_02{ max-width: 75%;}
  .key_wp{ background-position: 130% bottom;}
  .svg_edge_text > svg > use { transform: translateY(115%);}
}/* ==========max-width:414px========= */