@charset "UTF-8";
html {
  font-size: 62.5%;
}

@font-face {
  font-family: "ZenKakuGothic";
  font-weight: 400;
  src: url(../fonts/ZenKakuGothicNew-Regular.woff) format("woff");
}
@font-face {
  font-family: "ZenKakuGothic";
  font-weight: 600;
  src: url(../fonts/ZenKakuGothicNew-Medium.woff) format("woff");
}
@font-face {
  font-family: "ZenKakuGothic";
  font-weight: bold;
  src: url(../fonts/ZenKakuGothicNew-Bold.woff) format("woff");
}
@font-face {
  font-family: "Noto Serif JP";
  font-weight: 400;
  src: url(../fonts/NotoSerifJP-Regular.woff) format("woff");
}
@font-face {
  font-family: "Noto Serif JP";
  font-weight: 500;
  src: url(../fonts/NotoSerifJP-Medium.woff) format("woff");
}
@font-face {
  font-family: "Noto Serif JP";
  font-weight: 700;
  src: url(../fonts/NotoSerifJP-Bold.woff) format("woff");
}
@font-face {
  font-family: "Oswald";
  font-weight: 500;
  src: url(../fonts/Oswald-VariableFont_wght.woff) format("woff");
}
@font-face {
  font-family: "KiwiMaru";
  font-weight: 300;
  src: url(../fonts/KiwiMaru-Light.woff) format("woff");
}
@font-face {
  font-family: "KiwiMaru";
  font-weight: 400;
  src: url(../fonts/KiwiMaru-Regular.woff) format("woff");
}
@font-face {
  font-family: "KiwiMaru";
  font-weight: bold;
  src: url(../fonts/KiwiMaru-Medium.woff) format("woff");
}
@font-face {
  font-family: "KleeOne";
  font-weight: 400;
  src: url(../fonts/KleeOne-Regular.woff) format("woff");
}
@font-face {
  font-family: "KleeOne";
  font-weight: bold;
  src: url(../fonts/KleeOne-SemiBold.woff) format("woff");
}
@font-face {
  font-family: "Meiryo";
  font-weight: 400;
  src: url(../fonts/MEIRYO.woff) format("woff");
}
@font-face {
  font-family: "Meiryo";
  font-weight: bold;
  src: url(../fonts/MEIRYOB.woff) format("woff");
}
body {
  color: #494949;
  background: #f6f6f6;
  line-height: 2;
  font-family: "ZenKakuGothic", "Noto Serif JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  letter-spacing: 0.05rem;
  font-weight: 600;
  font-size: 2rem;
}

@media screen and (max-width: 768px) {
  body {
    letter-spacing: 0.05rem;
    font-size: 1.6rem;
    line-height: 1.9;
  }
}
small {
  font-size: 70%;
  display: inline-block;
}

.sm_only {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .pc_only {
    display: none !important;
  }
  .sm_only {
    display: unset !important;
  }
}
.pc_flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

@media screen and (max-width: 480px) {
  .pc_flex {
    display: block;
  }
}
img {
  width: 100%;
}

@media screen and (max-width: 480px) {
  img {
    width: 100%;
  }
}
/* 飾り */
.HL_text {
  background: linear-gradient(transparent 77%, #fff5d7 77%);
}

/* flex定義 */
.flex {
  display: flex;
  justify-content: space-around;
}

.marker_anime {
  background: linear-gradient(transparent 50%, #fff5d7 50%);
  display: inline;
  transition: background-size 4s ease;
  background-size: 0 100%;
  background-repeat: no-repeat;
  font-weight: bold;
}

.marker_anime.highlight {
  background-size: 100% 100%;
  color: #bb0000;
}

@media screen and (max-width: 768px) {
  .flex {
    display: flex;
    justify-content: space-around;
  }
}
.flex-wrap {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}

.flex-column {
  display: flex;
  flex-flow: column;
}

/* トップに戻るボタン */
#page-top a {
  background: #49bbfd;
  text-decoration: none;
  color: #fff;
  width: 60px;
  padding: 10px 0;
  text-align: center;
  display: block;
  border-radius: 5px;
  float: right;
  margin-bottom: 20px;
  border-radius: 50px;
  height: 60px;
}

#page-top {
  position: fixed;
  z-index: 100;
  bottom: 0px;
  right: 10px;
}

@media screen and (max-width: 768px) {
  #page-top a {
    background: #49bbfd;
    text-decoration: none;
    color: #fff;
    width: 50px;
    padding: 10px 0;
    text-align: center;
    display: block;
    border-radius: 5px;
    float: right;
    margin-bottom: 20px;
    border-radius: 50px;
    height: 50px;
  }
  #page-top {
    position: fixed;
    bottom: 0px;
    right: 10px;
  }
}
.gri_bg {
  position: relative;
  background: linear-gradient(259deg, #014c96 3.53%, #479cc1 69.13%, #9bc0dd 100%);
  z-index: 4;
  margin-top: -33px;
}

.grid_bg {
  background: url(../images/grid_bg.svg);
  text-align: left;
}

.back_bg {
  background: url(../images/back_bg.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}

.reason_back {
  background: url(../images/reason_back.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}

.risk_back {
  background: url(../images/risk_back.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}

.gray_back {
  background-image: linear-gradient(359deg, rgb(179, 179, 179), rgb(237, 237, 237));
}

.dot_back {
  background: url(../images/dot.webp);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: top center;
}

.blue_back {
  overflow: hidden;
  position: relative;
  background: #05224a;
  background: linear-gradient(to bottom, #22334a 0%, #22324a 50%, #22334a 75%, #556c8f 100%);
}

.img_back01 {
  background: url(../images/white_back_img.svg);
  background-size: contain;
  background-repeat: repeat;
}
.img_back01 .contents {
  padding: 60px 18px;
}
@media screen and (max-width: 768px) {
  .img_back01 .contents {
    padding: 30px 10px;
  }
}

.toggle_switch {
  position: relative;
  cursor: pointer;
}

.toggle_switch::after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 11px;
  background: url(../images/arrow_down.webp) no-repeat center center;
  background-size: contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 27px;
  transition: transform 0.2s;
}

.toggle_switch.open::after {
  transform: rotateZ(180deg);
  top: 46%;
}

.toggle_contents {
  display: none;
  width: 100%;
}

/* コンテンツ共通 */
.contents {
  width: 1000px;
  padding: 60px 0;
  margin: 0 auto;
}

.contents_title {
  font-family: "Noto serif JP";
  line-height: 1.5;
  text-align: center;
  font-size: 3.5rem;
  margin: 0px 0 20px;
  color: white;
  padding: 15px 0;
  background-color: #ab4126;
}

.seikyu_QA .contents_title {
  color: white;
  background-color: #ab4126;
}

.gengaku_QA .contents_title {
  background-color: #005896;
}

.contents_title_onlytext {
  font-family: "Noto serif JP";
  line-height: 1.5;
  text-align: center;
  font-size: 4.5rem;
  margin: 0px 0 20px;
  color: #005896;
  padding: 15px 0;
}
.contents_title_onlytext small {
  display: block;
  font-size: 2.8rem;
}

.contents_title_shortline {
  font-family: "Noto serif JP";
  position: relative;
  padding: 1.5rem;
  color: #005896;
  font-size: 4.5rem;
  text-align: center;
  line-height: 1.5;
  font-weight: bold;
}
.contents_title_shortline::before {
  position: absolute;
  bottom: -10px;
  left: calc(50% - 30px);
  width: 60px;
  height: 5px;
  content: "";
  border-radius: 3px;
  background: #005896;
}

.contents_title_nosub {
  font-family: "Noto serif JP";
  line-height: 1.5;
  text-align: center;
  font-size: 3.5rem;
  margin: 0px 0 80px;
  color: white;
  padding: 15px 0;
  background-color: #ab4126;
}

.contents_subtitle {
  position: relative;
  display: block;
  text-align: center;
  margin: 55px 0 28px;
}
.contents_subtitle::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f10d";
  font-size: 30px;
  color: #c0c0c0;
  margin: -40px -50px;
}

@media screen and (max-width: 768px) {
  .contents {
    width: 100%;
    margin: 0px auto 0px;
    padding: 30px 13px;
  }
  .contents_title {
    width: 100%;
    font-size: 2.2rem;
    line-height: 1.4;
    padding: 18px 4px;
    font-weight: bold;
    margin-bottom: 15px;
    letter-spacing: 1.2px;
  }
  .contents_title_nosub {
    font-size: 2.2rem;
    margin: 0px 0 40px;
    padding: 15px 0;
  }
  .contents_title_shortline {
    position: relative;
    padding: 1.5rem;
    color: #005896;
    font-size: 2.5rem;
    text-align: center;
    line-height: 1.5;
  }
  .contents_title_shortline::before {
    position: absolute;
    bottom: -10px;
    left: calc(50% - 30px);
    width: 60px;
    height: 5px;
    content: "";
    border-radius: 3px;
    background: #005896;
  }
  .contents_title2 {
    position: relative;
    line-height: 1.4;
    width: 100%;
    font-size: 2.2rem;
    padding: 18px 4px;
    margin-bottom: 40px;
  }
  .contents_title2::before {
    top: 95%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #751b15;
  }
  .contents_title_onlytext {
    line-height: 1.5;
    font-size: 2.5rem;
    margin: 0px 0 20px;
    padding: 15px 0;
  }
  .contents_title_onlytext small {
    display: block;
    font-size: 1.9rem;
    margin-bottom: 2px;
    color: #515151;
  }
  .contents_subtitle {
    font-size: 1.4rem;
    position: relative;
    display: block;
    text-align: left;
    margin: 60px 10px 20px 20px;
  }
  .contents_subtitle::before {
    font-size: 22px;
    margin: -42px -9px;
  }
}
/* FV */
header {
  width: 1100px;
  margin: 0 auto;
}

header img {
  width: 300px;
  padding: 17px 0;
}

.header_back {
  background-color: #f7f5f3;
}

.header_inner {
  width: 1000px;
  margin: 0px auto 0;
  padding: 0px 0 0 0;
  /* height: 620px; */
}
.header_inner img {
  width: 100%;
  position: relative;
  z-index: 22;
}

@media screen and (max-width: 768px) {
  header {
    width: 100%;
    margin: 0 auto;
    background: #ffffff;
  }
  header img {
    width: 60%;
    padding: 10px;
    display: block;
    margin: 0 auto;
  }
  .header_inner {
    width: 100%;
    padding-top: 0;
    margin: 0;
  }
  .header_inner img {
    margin: 0;
  }
}
.USP {
  padding: 30px 0;
  background: linear-gradient(331deg, #ba869c -6.47%, #e9ccdc 89.13%, #edd4e1 100%);
}
.USP img {
  width: 860px;
  margin: 0 auto;
  display: block;
}

.sokujitu {
  background: #bb0000;
  text-align: center;
}
.sokujitu p {
  color: white;
  font-size: 3rem;
  padding: 5px 0;
  text-align: center;
}

/* アクションエリア */
.action_title {
  margin-top: 0px;
}
@media screen and (min-width: 769px) {
  .action_title {
    margin: 0px auto 0;
    display: block;
    width: 800px;
  }
}

@media screen and (min-width: 769px) {
  .action_btn {
    width: 850px;
    margin: 0 auto;
  }
  .action_btn .flex-wrap {
    align-items: center;
  }
  .action_btn img {
    width: 400px;
  }
}
.contact_tel .flex,
.contact_mail .flex {
  align-items: center;
  justify-content: flex-start;
}
@media screen and (max-width: 768px) {
  .contact_tel img,
  .contact_mail img {
    width: 100%;
  }
}

.contact_tel .right_arrow_text {
  margin-right: 60px;
}

@media screen and (max-width: 768px) {
  .contact_tel img {
    margin-bottom: 20px;
  }
}
.mail_appeal {
  margin: 30px 0;
}

@media screen and (max-width: 768px) {
  .onayami_title {
    margin-top: -39px;
    margin-bottom: -20px;
  }
}

/* お悩み */
.onayami_title.pc_only {
  background-color: #ab4126;
  transform: rotate(357deg);
  background-color: #ab4126;
  transform: rotate(357deg);
  padding: 0 0 19px 0;
}
.onayami_title.pc_only img {
  width: 700px;
  display: block;
  margin: 0 auto;
}

.shape {
  position: relative;
}

.shape::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 40px solid transparent;
  border-right: 40px solid transparent;
  border-top: 20px solid #e9cb00;
}

.onayami_box {
  margin: 0 10px;
  background: #ededed;
  box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  border-radius: 8px;
  padding-bottom: 1px;
  margin-bottom: 20px;
  border: solid 1px #6b6b6b;
}
@media screen and (min-width: 769px) {
  .onayami_box {
    width: 900px;
    margin: 0 auto 20px;
  }
}
.onayami_box .toggle_switch {
  padding: 5px 0 0 20px;
}
@media screen and (min-width: 769px) {
  .onayami_box .toggle_switch {
    padding: 5px 0 0 50px;
  }
}
.onayami_box .toggle_switch img {
  width: 80%;
}
.onayami_box .toggle_contents .onayami_box_inner {
  padding: 15px;
  display: block;
  box-sizing: border-box;
  width: 95%;
  text-align: justify;
  margin: 0 auto;
  background: #ffffff;
  border: 3px solid #850000;
  border-radius: 11px;
}
@media screen and (min-width: 769px) {
  .onayami_box .toggle_contents .onayami_box_inner {
    width: 87%;
  }
}
.onayami_box .toggle_contents .onayami_box_inner img {
  margin: 10px 0px 15px 0;
}
.onayami_box .toggle_contents .onayami_box_inner span {
  color: #bb0000;
}
.onayami_box .flex {
  padding: 0 0 0 10px;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .onayami_box .flex {
    justify-content: center;
    padding: 0px 30px 0;
  }
}
.onayami_box .flex .flex-column {
  margin: 20px 0;
  width: 70%;
  margin-right: -10px;
  align-items: center;
}
.onayami_box .flex .flex-column img {
  margin: 7px 0;
}
.onayami_box .flex .lawyer_icon {
  width: 28%;
}
@media screen and (min-width: 769px) {
  .onayami_box .flex .lawyer_icon {
    width: 18%;
  }
}

/* アピールコンテンツ〜〜横２ */
.pat_01 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.pat_01 li {
  background-color: white;
  width: 48%;
  margin-bottom: 100px;
  color: black(0, 13, 102);
  box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1);
}

@media screen and (min-width: 768px) {
  .pat_01 li.pc-margin {
    margin-bottom: 0;
  }
}
.pat_01 img {
  width: 100%;
  height: 215px;
  -o-object-fit: cover;
     object-fit: cover;
}

.pat_01_text {
  padding: 20px 20px 45px;
}
.pat_01_text h1 {
  text-align: center;
  font-size: 6rem;
  line-height: 1.3;
  color: #efe8e8;
  margin-bottom: 10px;
}

.pat_01_text_title {
  color: #bc264f;
  line-height: 1.5;
  font-size: 2.8rem;
  margin-bottom: 30px;
  text-align: center;
  font-weight: bold;
}

.pat_01_text span {
  background: linear-gradient(transparent 77%, #ffe5ac 77%);
  font-weight: bold;
}

/* .pat_01 .pc-margin {
    margin-bottom: 0;
} */
@media screen and (max-width: 768px) {
  .pat_01 li {
    margin-bottom: 30px;
    width: 100%;
  }
  .pat_01_text {
    padding: 10px 20px 30px;
  }
  .pat_01_text_title {
    font-size: 2.4rem;
    margin-bottom: 15px;
  }
  .pat_01 img {
    width: 100%;
    height: 155px;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
/* アピールコンテンツ〜〜縦図なし */
.pat_02 {
  background: #fff url(../images/bg_dot.webp) repeat;
  padding: 40px 80px;
  margin-bottom: 50px;
  padding-top: 20px;
}

.pat_02 .pat_02_content span {
  font-weight: bold;
}

.shiho {
  background: gainsboro;
  padding: 30px;
}

.bengo {
  background: #f6e1c3;
  padding: 30px;
  margin-top: 30px;
}

.bengo h1 {
  font-size: 3.5rem !important;
  color: #1d4e97;
  font-weight: bold;
  text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
  font-feature-settings: "palt";
  font-size: 3.2rem;
  letter-spacing: 0.1em;
  font-family: "YuMincho", "游明朝";
}

.pat_02 h1 {
  font-size: 2.5rem;
  font-weight: bold;
}

.pat_02 ul li {
  background-color: #fff;
  padding: 10px;
  margin-bottom: 10px;
  font-weight: bold;
  color: #282828;
  letter-spacing: 0.06em;
}

.pat_02 ul {
  margin: 20px 0;
}

.point_num {
  width: 20%;
  margin: 0 auto;
  display: block;
  /* margin-top: -50px; */
  margin-bottom: -30px;
}

.merit_num {
  text-align: center;
  color: #5b5b5b;
  font-size: 3rem;
  font-weight: bold;
}

.pat_02_title {
  color: #bf5637;
  font-weight: bold;
  /* background: linear-gradient(transparent 65%, #ccd7b6 65%); */
  text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
  font-feature-settings: "palt";
  text-align: center;
  font-size: 3.8rem;
  margin-bottom: 20px;
  position: relative;
  line-height: 1.4;
  font-family: "YuMincho", "游明朝";
}

@media screen and (max-width: 768px) {
  .pat_02 {
    background: #fff url(../images/bg_dot.webp) repeat;
    padding: 10px;
    margin-bottom: 50px;
    padding-top: 20px;
  }
  .pat_02 .pat_02_content span {
    font-weight: bold;
  }
  .pat_02 h1 {
    font-size: 2rem;
  }
  .pat_02 ul {
    margin: 20px 0;
  }
  .point_num {
    width: 35%;
    margin: 0 auto;
    display: block;
    /* margin-top: -50px; */
    margin-bottom: -30px;
  }
  .merit_num {
    text-align: center;
    color: #5b5b5b;
    font-weight: bold;
  }
  .pat_02_title {
    font-size: 2.5rem;
    text-align: left;
    margin-bottom: 20px;
    position: relative;
    line-height: 1.4;
    font-family: "YuMincho", "游明朝";
  }
  .shiho {
    background: gainsboro;
    padding: 10px;
  }
  .bengo {
    background: #f6e1c3;
    padding: 10px;
    margin-top: 20px;
  }
  .bengo h1 {
    font-size: 2.5rem !important;
    color: #1d4e97;
    font-weight: bold;
    text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
    font-feature-settings: "palt";
    font-size: 3.2rem;
    letter-spacing: 0.1em;
    font-family: "YuMincho", "游明朝";
  }
}
/* よくある質問〜〜折りたたみ式 */
.accordion-area {
  list-style: none;
  width: 96%;
  margin: 65px auto;
}
.accordion-area li {
  margin: 10px 0;
}
.accordion-area section {
  box-shadow: 0px 5px 11px 0px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(128, 128, 128, 0);
  background: white;
  border-radius: 5px;
  margin-bottom: 25px;
}

.title {
  position: relative;
  cursor: pointer;
  font-weight: 700;
  padding: 3% 3% 3% 85px;
  transition: all 0.5s ease;
}
.title::before, .title::after {
  position: absolute;
  content: "";
  width: 27px;
  height: 2px;
  background-color: #333;
}
.title::before {
  top: 48%;
  left: 30px;
  transform: rotate(0deg);
}
.title::after {
  top: 48%;
  left: 30px;
  transform: rotate(90deg);
}
.title.close::before {
  transform: rotate(45deg);
}
.title.close::after {
  transform: rotate(-45deg);
}

.accordion-area .box {
  opacity: unset;
  display: none;
  background: #fff2ec;
  margin: 0 3% 3% 3%;
  padding: 20px;
  border-radius: 10px;
}
.accordion-area .box p.withimg {
  position: relative;
  margin-top: 30px;
  width: 600px;
}
.accordion-area .box p.withimg::after {
  background: url(../images/soudan_img01.webp) no-repeat center top;
  background-size: contain;
  position: absolute;
  right: -255px;
  content: "";
  bottom: -10px;
  display: block;
  width: 255px;
  height: 160px;
}
@media screen and (max-width: 768px) {
  .accordion-area .box p.withimg {
    width: 100%;
    margin-bottom: 130px;
  }
  .accordion-area .box p.withimg::after {
    background-size: contain;
    position: absolute;
    right: 10%;
    content: "";
    bottom: -140px;
    display: block;
    width: 180px;
    height: 130px;
  }
}
.accordion-area .box p.withimg02 {
  margin-top: 40px;
}
.accordion-area .box p.withimg02::after {
  background: url(../images/soudan_img02.webp) no-repeat center top;
  right: -285px;
  bottom: -10px;
  display: block;
  background-size: contain;
  height: 160px;
}
@media screen and (max-width: 768px) {
  .accordion-area .box p.withimg02::after {
    right: 0%;
    bottom: -130px;
    display: block;
    background-size: contain;
    height: 130px;
  }
}

@media screen and (max-width: 768px) {
  .accordion-area {
    margin: 30px auto;
    width: 100%;
  }
  .title {
    position: relative;
    cursor: pointer;
    font-weight: 700;
    padding: 3% 3% 3% 50px;
    transition: all 0.5s ease;
  }
  .title::before, .title::after {
    position: absolute;
    content: "";
    width: 15px;
    height: 2px;
    background-color: #333;
  }
  .title::before {
    top: 48%;
    left: 15px;
    transform: rotate(0deg);
  }
  .title::after {
    top: 48%;
    left: 15px;
    transform: rotate(90deg);
  }
}
.cost_table {
  padding: 8px;
}
.cost_table table {
  border: 1px solid #dadada;
  display: grid;
}
.cost_table table tr,
.cost_table table th {
  display: grid;
}
.cost_table table th {
  border-bottom: 1px solid #dadada;
  background: #ebebeb;
  text-align: left;
  font-weight: bold;
}
.cost_table table tr td {
  border-bottom: 1px solid #dadada;
}

.red {
  font-weight: bold;
  color: #ee0000;
}

.cost_table table tr td p {
  margin: 12px 0;
}
.cost_table table th,
.cost_table table td {
  padding: 12px;
}
.cost_table table tr:last-of-type td {
  border-bottom: none;
}

.cost_asterisk li {
  list-style-type: none;
  text-indent: -1em;
  margin-top: 5px;
  margin-left: 15px;
  font-size: 12px;
}
.cost_asterisk li:before {
  display: inline;
  content: "※";
}

.cost_list li {
  list-style-type: none;
  text-indent: -1em;
  margin-top: 5px;
  margin-left: 15px;
  font-size: 12px;
}
.cost_list li:before {
  display: inline;
  content: "・";
}

.cost_subtitle {
  border-bottom: 1px solid;
  font-weight: bold;
  margin-top: 45px;
}

/* 事務所のご案内 */
.office_img {
  padding: 8px;
  margin-top: 8px;
  text-align: center;
}

.office_box img {
  width: 100%;
  vertical-align: bottom;
}

.office_table {
  padding: 8px;
  margin-top: 8px;
}
.office_table table {
  border: 1px solid #dadada;
  margin-top: 12px;
  display: grid;
}
.office_table table tr,
.office_table table th,
.office_table table td {
  display: grid;
}
.office_table table th {
  border-bottom: 1px solid #dadada;
  background: #f5e8d9;
  text-align: left;
  font-weight: bold;
}
.office_table table tr td {
  border-bottom: 1px solid #dadada;
}
.office_table table tr td p {
  margin-bottom: 8px;
}
.office_table table th,
.office_table table td {
  padding: 12px;
}
.office_table table tr:last-of-type td {
  border-bottom: none;
}

.office_subtabletitle {
  border-bottom: 1px solid #dadada;
  background: #f3f3f3;
  text-align: left;
  font-weight: bold;
  padding: 12px;
}

.office_subtable {
  padding: 8px;
  margin-top: 0;
}
.office_subtable p.txt {
  color: #cab795;
  font-weight: bold;
  font-size: 24px;
  line-height: 1.4;
  margin-top: 40px;
  border-bottom: 2px solid #cab795;
}
.office_subtable table {
  border: none;
  margin-top: 0px;
  display: flex;
}
.office_subtable table.txt {
  width: 70%;
}
.office_subtable table.pic {
  width: 20%;
}
.office_subtable table td.s-text {
  font-size: 13px;
}
.office_subtable table tr,
.office_subtable table th,
.office_subtable table td {
  display: flex;
}
.office_subtable table th {
  border-bottom: 1px solid #ffffff;
  text-align: left;
  font-weight: normal;
  width: 120px;
}
.office_subtable table tr td {
  border-bottom: 1px solid #ffffff;
  display: grid;
}
.office_subtable table tr td.smalla {
  width: 54px;
}
.office_subtable table th,
.office_subtable table td {
  padding: 4px;
}
.office_subtable p {
  margin-bottom: 12px;
}
/*office*/
.office_subtable .flex-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.chizu_box {
  border: 1px solid #ccc;
  padding: 8px;
  margin: 4px 4px 14px 4px;
  width: 340px;
}

.chizu_title {
  font-weight: bold;
  font-size: 15px;
}

.chizu_text {
  font-size: 13px;
}

.jusyo {
  display: none;
}

.chizu_btn {
  text-align: center;
  font-size: 13px;
  text-decoration: underline;
  color: #1d4e97;
}

@media screen and (max-width: 768px) {
  .office_box img {
    vertical-align: bottom;
    width: 100%;
    margin: 10px 0px 45px;
  }
  .office_subtabletitle {
    border-bottom: 1px solid #dadada;
    text-align: left;
    font-weight: bold;
    padding: 12px;
  }
  .office_subtable {
    padding: 8px;
    margin-top: 14px;
    font-size: 1.4rem;
  }
  .office_subtable table {
    border: none;
    margin-top: 0px;
    display: flex;
  }
  .office_subtable table tr,
  .office_subtable table th,
  .office_subtable table td {
    display: flex;
  }
  .office_subtable table th {
    border-bottom: 1px solid #ffffff;
    text-align: left;
    font-weight: normal;
    width: 80px;
    white-space: nowrap;
  }
  .office_subtable table tr td {
    border-bottom: 1px solid #ffffff;
    display: grid;
    width: 238px;
  }
  .office_subtable table tr td.smalla {
    width: 16px;
  }
  .office_subtable table th,
  .office_subtable table td {
    padding: 4px;
  }
  .office_subtable p {
    margin-bottom: 12px;
    margin: 0px;
  }
  .office_subtable p span {
    font-size: 1.3rem;
  }
  /*office*/
  .office_subtable .flex-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: unset;
  }
  .chizu_box {
    border: 1px solid #ccc;
    padding: 8px;
    margin: 4px 4px 14px 4px;
    width: 100%;
  }
  .chizu_title {
    font-weight: bold;
    font-size: 14px;
  }
  .chizu_text {
    font-size: 14px;
  }
  .jusyo {
    display: none;
  }
  .chizu_btn {
    text-align: center;
    font-size: 14px;
  }
}
/* フッター */
footer {
  background-color: #ab4126;
  padding: 50px 30px;
  text-align: center;
  color: white;
}
footer.gengaku {
  background-color: #005896;
}

.privacy {
  text-decoration: underline;
}

/* 事例など、プルダウン */
.hosyo h1 {
  font-size: 4rem;
  text-align: center;
  margin-bottom: -30px;
  line-height: 1.4;
}

.son_img {
  width: 40%;
}

.son p {
  font-size: 3.5rem;
  margin-top: 40px;
}

.son {
  background-image: linear-gradient(90deg, #e5e5e5, rgba(255, 255, 255, 0));
  padding: 30px 30px 0 30px;
  margin-top: 50px;
  margin-left: calc((100vw - 100%) / 2 * -1);
  margin-right: calc((100vw - 100%) / 2 * -1);
}

.son_arrow {
  width: 150px;
  display: block;
  margin: 50px auto;
}

.son_first p {
  text-align: center;
  font-size: 2.7rem;
  font-weight: 600;
}

.son_first p:first-child {
  margin-bottom: 40px;
}

.son1 .contents {
  margin: 0 auto;
}

.hosyo_point {
  width: 1080px;
  background: white;
  box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1);
  padding: 60px 100px;
  margin: 0 auto;
  margin-top: 80px;
}

.hosyo_point h2 span {
  font-size: 4rem;
  font-weight: 600;
  font-family: "Noto Serif JP";
  color: #bf5637;
  background: linear-gradient(transparent 65%, #faeec2 65%);
  text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
  font-feature-settings: "palt";
}

.hosyo_point h1 {
  margin-bottom: 10px;
  /* text-align: left; */
  font-weight: bold;
  font-size: 3rem;
}

.hosyo_point p {
  margin-top: 10px;
}

.hosyo .flex {
  align-items: center;
  width: 1080px;
  margin: 40px auto 0;
}

.son1 h3 {
  font-size: 8rem;
  text-align: left;
  color: rgba(215, 189, 182, 0.5411764706);
  width: 1080px;
  margin: 0 auto;
  margin-bottom: -136px;
  font-family: "Noto Serif JP";
  margin-top: 40px;
}

.son_bottom {
  width: 1080px;
  margin: 0 auto;
  margin-top: 110px;
}

.son_bottom .son_first p {
  text-align: left;
  width: 95%;
}

.son_bottom img {
  width: 320px;
}

.hosyo_point p span {
  font-weight: bold;
}

.son_first p span {
  font-size: 4rem;
  font-weight: 600;
  color: #bf5637;
  background: linear-gradient(transparent 65%, #ccd7b6 65%);
  text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
  font-feature-settings: "palt";
}

.way ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.way ul li {
  width: 45%;
  padding: 30px;
  background: #e1f1f5;
  margin: 20px;
}

.arrow {
  width: 210px;
  display: block;
  margin: 55px auto 0;
}

.bengoshi {
  width: 310px;
}

.bottom_text p {
  font-size: 4rem;
  font-weight: 600;
  font-family: "Noto Serif JP";
  color: #bf5637;
  text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
  font-feature-settings: "palt";
  margin-left: 0px;
  line-height: 1.8;
}

.bottom_text p span {
  background: linear-gradient(transparent 65%, #faeec2 65%);
}

@media screen and (max-width: 768px) {
  .hosyo h1 {
    font-size: 2rem;
    text-align: center;
    margin-bottom: -30px;
    line-height: 1.4;
  }
  .son_img {
    width: 40%;
  }
  .son p {
    font-size: 2.5rem;
    margin-top: 40px;
  }
  .son {
    background-image: linear-gradient(90deg, #e5e5e5, rgba(255, 255, 255, 0));
    padding: 30px 30px 0 30px;
    margin-top: 50px;
    margin-left: calc((100vw - 100%) / 2 * -1);
    margin-right: calc((100vw - 100%) / 2 * -1);
  }
  .son_arrow {
    width: 150px;
    display: block;
    margin: 50px auto;
  }
  .son_first p {
    text-align: center;
    font-size: 2.7rem;
    font-weight: 600;
  }
  .son_first p:first-child {
    margin-bottom: 40px;
  }
  .hosyo_point {
    width: 100%;
    background: white;
    box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1);
    padding: 30px 20px;
    margin: 0 auto;
    margin-top: 80px;
  }
  .hosyo_point h2 span {
    font-size: 2.5rem;
    font-weight: 600;
    font-family: "Noto Serif JP";
    color: #bf5637;
    background: linear-gradient(transparent 65%, #faeec2 65%);
    text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
    font-feature-settings: "palt";
  }
  .hosyo_point h1 {
    margin-bottom: 10px;
    /* text-align: left; */
    font-weight: bold;
    font-size: 2.2rem;
  }
  .hosyo_point p {
    margin-top: 10px;
  }
  .hosyo .flex {
    width: 100%;
  }
  .son1 h3 {
    font-size: 6rem;
    text-align: left;
    color: rgba(215, 189, 182, 0.5411764706);
    width: 100%;
    margin: 0 auto;
    margin-bottom: -118px;
    font-family: "Noto Serif JP";
    margin-top: 0px;
  }
  .son_bottom {
    width: 100%;
    margin: 0 auto;
    margin-top: 110px;
  }
  .son_bottom .son_first p {
    text-align: left;
    width: 95%;
  }
  .son_bottom img {
    width: 320px;
  }
  .hosyo_point p span {
    font-weight: bold;
  }
  .son_first p span {
    font-size: 4rem;
    font-weight: 600;
    color: #bf5637;
    background: linear-gradient(transparent 65%, #ccd7b6 65%);
    text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
    font-feature-settings: "palt";
  }
  .way ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .way ul li {
    width: 100%;
    padding: 20px 10px;
    background: #e1f1f5;
    margin: 10px 0;
  }
  .arrow {
    width: 100px;
    display: block;
    margin: 30px auto;
  }
  .bengoshi {
    width: 200px;
    margin-top: -20px;
  }
  .bottom_text {
    align-items: center;
    margin-top: -30px;
  }
  .bottom_text p {
    font-size: 2.5rem;
    font-weight: 600;
    font-family: "Noto Serif JP";
    color: #bf5637;
    text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
    font-feature-settings: "palt";
    margin-left: 0;
  }
  .bottom_text p span {
    background: linear-gradient(transparent 65%, #faeec2 65%);
  }
}
/*アコーディオンで現れるエリア*/
#jirei .jirei_title {
  margin-left: 30px;
}
@media screen and (max-width: 768px) {
  #jirei .jirei_title {
    margin-left: 0;
  }
}
#jirei .jirei_title span {
  background: #587447;
  padding: 3px 10px;
  border-radius: 7px;
  margin-bottom: 20px;
  color: white;
}
#jirei .accordion-area .box {
  opacity: unset;
  display: none;
  /*はじめは非表示*/
  background: #fafafa;
  padding: 3%;
}
#jirei.soudan_mark1 {
  margin-bottom: 10px;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid black;
  border-radius: 19px;
  padding: 0px 11px;
  font-size: 2.3rem;
  font-weight: bold;
}
#jirei .soudan_mark3 {
  background-color: #6f3a27;
  width: -moz-fit-content;
  width: fit-content;
  padding: 2px 10px;
  color: white;
  border-radius: 14px;
  margin-bottom: 10px;
}
#jirei .soudan {
  margin: 35px 0 0;
}
#jirei .soudan h1 {
  background: #ca7952;
  width: -moz-fit-content;
  width: fit-content;
  color: white;
  border-radius: 7px;
  margin-top: 20px;
  width: 145px;
  text-align: center;
}
#jirei .soudan h1:first-child {
  margin-top: 0;
}
#jirei .soudan_point {
  margin: 35px 0 0;
  background-color: #fcede8;
  padding: 13px 25px;
  border-radius: 20px;
}
#jirei .soudan_point h1 {
  color: #005896;
}
@media screen and (max-width: 768px) {
  #jirei .soudan_point {
    padding: 13px 10px;
  }
}
#jirei .accordion-area {
  list-style: none;
  margin: 30px auto;
}
#jirei.accordion-area li {
  margin: 10px 0;
}
#jirei .accordion-area section {
  box-shadow: 0px 5px 11px 0px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(128, 128, 128, 0);
  background: white;
  border-radius: 6px;
  margin-bottom: 25px;
}
#jirei h3 {
  font-size: 3rem;
}
#jirei .case_action {
  padding: 10px;
}
#jirei .case_action p {
  text-align: center;
  color: #f1f2f3;
  font-weight: bold;
  padding: 16px 8px 0px 8px;
  font-size: 17px;
}
#jirei .case_flow {
  background: #f5f5f5;
  width: 96%;
  margin: 24px auto;
  border-radius: 12px;
  padding: 8px;
}
#jirei .case_action_txt {
  display: flex;
  justify-content: space-between;
  display: flex;
  position: relative;
  top: 14px;
}
#jirei.case_flow p.casetitle {
  margin-right: 50px;
  padding: 12px;
  margin-left: 100px;
}
#jirei .case_flow .titleimg {
  width: 76px;
  position: absolute;
  top: 10px;
  left: 12px;
}
#jirei .case_flow .contentsimg img {
  width: 80px;
}
#jirei .case_contents {
  background: #fff;
}
#jirei .toggle_switch {
  position: relative;
  cursor: pointer;
  padding: 21px 0px;
}
#jirei .toggle_contents p {
  text-align: left;
  padding: 10px 45px;
  font-size: 1.6rem;
}
#jirei .toggle_switch::after {
  content: "";
  display: inline-block;
  width: 21px;
  height: 21px;
  background: url(../images/arrow_down.webp) no-repeat center center;
  background-size: contain;
  position: absolute;
  top: 34%;
  right: 28%;
  transition: transform 0.2s;
}
#jirei .toggle_switch.open::after {
  transform: rotateZ(180deg);
  top: 34%;
}
#jirei .question_box .toggle_switch::after {
  right: 3%;
}
#jirei .toggle_contents {
  display: none;
  padding: 8px 0px;
  background: #fff;
  width: 100%;
  margin: 0px auto 12px;
}
#jirei .toggle_contents span {
  background: linear-gradient(transparent 77%, #ffc8c8 60%);
}

.soudan_mark1 {
  margin-bottom: 10px;
  border-bottom: 2px solid;
  color: rgb(88, 116, 71);
  font-weight: bold;
  font-size: 2.5rem;
  padding-left: 10px;
}

.soudan_mark2 {
  color: #9d7816;
}

.comment {
  background: #cee2e7;
  padding: 15px;
  border-radius: 10px;
}

@media screen and (max-width: 768px) {
  #jirei .soudan {
    margin: 15px 0 0;
  }
  #jirei .soudan_mark2 {
    font-size: 2rem;
  }
  .soudan_mark1 {
    font-size: 1.8rem;
    border-bottom: 1px solid;
  }
}
.detail_btn {
  cursor: pointer;
  text-align: center;
  color: #838383;
}

.detail_btn::before {
  content: "詳しく見る　▼";
  top: 10px;
  position: relative;
}

.detail_btn_ {
  text-align: center;
  color: #838383;
  margin: 20px 0;
  font-weight: bold;
  cursor: pointer;
}

.action_mark {
  display: block;
  width: 62%;
  margin: 0 auto 10px;
}

.kigyo {
  background-color: #ffffff;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  padding: 20px 83px;
  margin-top: 20px !important;
}

.kigyo .contents {
  margin: 0 auto;
}

.kigyo p {
  margin-bottom: 30px;
}

.job_icon {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  margin-bottom: 40px;
}

.job_icon li img {
  width: 190px;
  margin-bottom: 50px;
}

@media screen and (max-width: 768px) {
  .kigyo {
    background-color: #ffffff;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding: 20px;
    margin-top: 20px !important;
    margin-bottom: 0px;
  }
  .kigyo .contents {
    margin: 0 auto;
  }
  .kigyo p {
    margin-bottom: 15px;
  }
  .job_icon {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 0px;
  }
  .job_icon li img {
    width: 100px;
    margin-bottom: 20px;
  }
  .kigyo .contents_title01 {
    font-size: 2.5rem;
  }
  .action_mark {
    width: 80%;
  }
}
.voice_pofile p {
  font-weight: bold;
}

#case_pulldown {
  position: relative;
}
#case_pulldown .box {
  margin: 0 auto 4.8rem;
  background: white;
}
#case_pulldown .box .tab {
  padding: 1.1rem 0 0.8rem;
  width: 17.2rem;
}
#case_pulldown .box .tab p {
  text-align: center;
  color: #dcdcdc;
  line-height: 1;
  font-weight: bold;
  font-family: "Noto Serif JP";
  font-size: 8.2rem;
  margin-bottom: -40px;
  margin-left: -30px;
}
#case_pulldown .box .tab p span {
  font-size: 6rem;
}
#case_pulldown .box .white {
  box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1);
  padding: 30px 50px 30px;
  /* border-radius: 0 3.2rem 3.2rem 3.2rem; */
  margin: 0 auto;
}

.aisatu #case_pulldown .box .white {
  padding: 10px 50px 30px;
}

#case_pulldown .box .white .profile {
  margin-bottom: 3.2rem;
}
#case_pulldown .box .white .profile li:first-child {
  margin-right: 3.2rem;
}
#case_pulldown .box .white .profile li:first-child img {
  max-width: 260px;
}
#case_pulldown .box .white .profile li:last-child {
  padding-top: 2.2rem;
}
#case_pulldown .box .white .profile li:last-child span {
  position: relative;
  display: inline-block;
  color: #393939;
  font-weight: bold;
  line-height: 1;
  padding-left: 2.4rem;
  margin: 0 1.6rem 1.3rem 0;
}
#case_pulldown .box .white .initial {
  display: flex;
  margin-bottom: 3rem;
}
#case_pulldown .box .white .initial li:first-child {
  color: #393939;
  margin-right: 2.2rem;
  align-items: flex-start;
}
#case_pulldown .box .white .initial li:first-child .t1 {
  font-weight: 400;
  margin-bottom: 10px;
  font-size: 2.3rem;
  line-height: 1.2;
}
#case_pulldown .box .white .initial li:first-child .t2 {
  text-align: center;
  font-weight: bold;
  margin-top: -20px;
}
#case_pulldown .box .white .initial li:first-child .t2 span {
  font-family: "Oswald", sans-serif;
  font-size: 4.5rem;
}
#case_pulldown .box .white .initial li:last-child .t3.sl {
  padding: 2.6rem 1.6rem 2.6rem !important;
}
#case_pulldown .box .white .initial li:last-child .t3 span {
  font-family: "Oswald", sans-serif;
  font-size: 6rem;
  font-weight: bold;
}
#case_pulldown .box .white .initial li:last-child .t3 img {
  position: absolute;
  right: -29px;
  top: -35px;
  width: 70px;
}
#case_pulldown .box .white .initial li:last-child .t3:after {
  position: absolute;
  left: 8.4rem;
  bottom: -5.2rem;
  content: "";
  border-top: 3.6rem solid #e6e8ec;
  border-right: 2.4rem solid transparent;
  border-bottom: 2.4rem solid transparent;
  border-left: 2.4rem solid transparent;
}
#case_pulldown .box .white .voice_title {
  font-weight: bold;
  font-size: 2.8rem;
  line-height: 1.5;
  margin-top: 10px;
}
#case_pulldown .box .white .initial li.ss:first-child {
  width: 17.4rem;
  margin-right: 0;
}
#case_pulldown .box .white .initial li.ss:first-child .t2 {
  text-align: left;
  letter-spacing: -0.03em;
}
#case_pulldown .box .white .get {
  display: flex;
  justify-content: space-between;
  color: #393939;
  margin-bottom: 3.6rem;
  align-items: flex-end;
}
#case_pulldown .box .white .get li:first-child {
  margin-right: 1rem;
}
#case_pulldown .box .white .get li:first-child .t1 {
  text-align: center;
  width: 95px;
  padding: 17px;
  background: #faeec2;
  font-weight: bold;
  line-height: 1.14;
  font-size: 3rem;
}
#case_pulldown .box .white .get li:last-child {
  width: calc(100% - 9rem);
}
#case_pulldown .box .white .get li:last-child .t2 {
  line-height: 1.2;
  font-weight: bold;
}
#case_pulldown .box .white .get li:last-child .t2 span {
  position: relative;
  z-index: 1;
}
#case_pulldown .box .white .get li:last-child .t2 span.s1:after {
  position: absolute;
  left: 0;
  bottom: 1.1rem;
  width: 100%;
  height: 3.6rem;
  background: #faeec2;
  content: "";
  z-index: -1;
}
#case_pulldown .box .white .get li:last-child .t2 span.s1.sl {
  padding: 0.7rem 0.5rem 0;
  margin-right: 0.5rem;
  line-height: 1.45;
}
#case_pulldown .box .white .text {
  font-weight: 400;
  line-height: 2;
  color: #393939;
  letter-spacing: -0.02em;
  padding-bottom: 4rem;
  display: none;
  padding-top: 20px;
}
#case_pulldown .box .white .text br {
  display: block;
  content: "";
  margin: 10px 0;
}
#case_pulldown .box .white .text span {
  color: #9d7816;
  font-weight: 600;
}
#case_pulldown .box .white .answer-btn {
  text-align: center;
}
#case_pulldown .box .white .answer-btn img {
  margin: 0 auto;
  display: block;
}
#case_pulldown .box .white .answer-btn img.open {
  width: 10.8rem;
  margin-top: 20px;
}
#case_pulldown .box .white .answer-btn img.close {
  width: 6rem;
  display: none;
  margin-top: 20px;
}
#case_pulldown .box .white .answer-btn img:hover {
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  #case_pulldown {
    position: relative;
  }
  #case_pulldown .box {
    margin: 0 auto 4.8rem;
  }
  #case_pulldown .box .tab {
    padding: 1.1rem 0 0.8rem;
    width: 17.2rem;
  }
  #case_pulldown .box .tab p {
    text-align: center;
    color: #dcdcdc;
    line-height: 1;
    font-weight: bold;
    font-family: "Noto Serif JP";
    font-size: 8.2rem;
    margin-bottom: -40px;
    margin-left: -30px;
  }
  #case_pulldown .box .white {
    box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1);
    /* border-radius: 0 3.2rem 3.2rem 3.2rem; */
    margin: 0 auto;
    padding: 20px 10px;
  }
  .aisatu #case_pulldown .box .white {
    padding: 10px 20px 20px;
    margin-top: 20px;
  }
  #case_pulldown .box .white .profile {
    margin-bottom: 3.2rem;
  }
  #case_pulldown .box .white .profile li:first-child {
    margin-right: 3.2rem;
  }
  #case_pulldown .box .white .profile li:first-child img {
    max-width: 260px;
  }
  #case_pulldown .box .white .profile li:last-child {
    padding-top: 2.2rem;
  }
  #case_pulldown .box .white .profile li:last-child span {
    position: relative;
    display: inline-block;
    color: #393939;
    font-weight: bold;
    line-height: 1;
    padding-left: 2.4rem;
    margin: 0 1.6rem 1.3rem 0;
  }
  #case_pulldown .box .white .initial {
    display: flex;
    margin-bottom: 3rem;
  }
  #case_pulldown .box .white .initial li:first-child {
    color: #393939;
    margin-right: 2.2rem;
    align-items: flex-start;
  }
  #case_pulldown .box .white .initial li:first-child .t1 {
    font-weight: 400;
    margin-bottom: 10px;
    font-size: 2.3rem;
    line-height: 1.2;
  }
  #case_pulldown .box .white .initial li:first-child .t2 {
    text-align: center;
    font-weight: bold;
    margin-top: -20px;
  }
  #case_pulldown .box .white .initial li:first-child .t2 span {
    font-family: "Oswald", sans-serif;
    font-size: 4.5rem;
  }
  #case_pulldown .box .white .initial li:last-child .t3.sl {
    padding: 2.6rem 1.6rem 2.6rem !important;
  }
  #case_pulldown .box .white .initial li:last-child .t3 span {
    font-family: "Oswald", sans-serif;
    font-size: 6rem;
    font-weight: bold;
  }
  #case_pulldown .box .white .initial li:last-child .t3 img {
    position: absolute;
    right: -29px;
    top: -35px;
    width: 70px;
  }
  #case_pulldown .box .white .initial li:last-child .t3:after {
    position: absolute;
    left: 8.4rem;
    bottom: -5.2rem;
    content: "";
    border-top: 3.6rem solid #e6e8ec;
    border-right: 2.4rem solid transparent;
    border-bottom: 2.4rem solid transparent;
    border-left: 2.4rem solid transparent;
  }
  #case_pulldown .box .white .voice_title {
    margin-left: 0px;
    font-size: 2rem;
    margin-bottom: 10px;
  }
  #case_pulldown .box .white .initial li.ss:first-child {
    width: 17.4rem;
    margin-right: 0;
  }
  #case_pulldown .box .white .initial li.ss:first-child .t2 {
    text-align: left;
    letter-spacing: -0.03em;
  }
  #case_pulldown .box .white .get {
    display: flex;
    justify-content: space-between;
    color: #393939;
    margin-bottom: 3.6rem;
    align-items: flex-end;
  }
  #case_pulldown .box .white .get li:first-child {
    margin-right: 1rem;
  }
  #case_pulldown .box .white .get li:first-child .t1 {
    text-align: center;
    width: 95px;
    padding: 17px;
    background: #faeec2;
    font-weight: bold;
    line-height: 1.14;
    font-size: 3rem;
  }
  #case_pulldown .box .white .get li:last-child {
    width: calc(100% - 9rem);
  }
  #case_pulldown .box .white .get li:last-child .t2 {
    line-height: 1.2;
    font-weight: bold;
  }
  #case_pulldown .box .white .get li:last-child .t2 span {
    position: relative;
    z-index: 1;
  }
  #case_pulldown .box .white .get li:last-child .t2 span.s1:after {
    position: absolute;
    left: 0;
    bottom: 1.1rem;
    width: 100%;
    height: 3.6rem;
    background: #faeec2;
    content: "";
    z-index: -1;
  }
  #case_pulldown .box .white .get li:last-child .t2 span.s1.sl {
    padding: 0.7rem 0.5rem 0;
    margin-right: 0.5rem;
    line-height: 1.45;
  }
  #case_pulldown .box .white .text {
    font-weight: 400;
    line-height: 2;
    color: #393939;
    letter-spacing: -0.02em;
    display: none;
    padding: 0px 0;
  }
  #case_pulldown .box .white .text br {
    display: block;
    content: "";
    margin: 10px 0;
  }
  #case_pulldown .box .white .answer-btn {
    text-align: center;
  }
  #case_pulldown .box .white .answer-btn img {
    margin: 0 auto;
    display: block;
  }
  #case_pulldown .box .white .answer-btn img.open {
    height: 25px;
    margin-top: 10px;
    width: auto;
  }
  #case_pulldown .box .white .answer-btn img.close {
    height: 25px;
    width: auto;
    display: none;
  }
  #case_pulldown .box .white .answer-btn img:hover {
    cursor: pointer;
  }
  .Paper_v2 {
    background-image: repeating-linear-gradient(to bottom, transparent 25px, rgba(0, 0, 0, 0.04) 26px, rgba(0, 0, 0, 0.04) 26px, transparent 27px, transparent 51px, rgba(0, 0, 0, 0.04) 52px, rgba(0, 0, 0, 0.04) 52px, transparent 53px, transparent 77px, rgba(0, 0, 0, 0.04) 78px, rgba(0, 0, 0, 0.04) 78px, transparent 79px, transparent 103px, rgba(0, 0, 0, 0.04) 104px, rgba(0, 0, 0, 0.04) 104px, transparent 105px, transparent 129px, rgba(0, 0, 0, 0.04) 130px, rgba(0, 0, 0, 0.04) 130px), repeating-linear-gradient(to right, transparent 25px, rgba(0, 0, 0, 0.04) 26px, rgba(0, 0, 0, 0.04) 26px, transparent 27px, transparent 51px, rgba(0, 0, 0, 0.04) 52px, rgba(0, 0, 0, 0.04) 52px, transparent 53px, transparent 77px, rgba(0, 0, 0, 0.04) 78px, rgba(0, 0, 0, 0.04) 78px, transparent 79px, transparent 103px, rgba(0, 0, 0, 0.04) 104px, rgba(0, 0, 0, 0.04) 104px, transparent 105px, transparent 129px, rgba(0, 0, 0, 0.04) 130px, rgba(0, 0, 0, 0.04) 130px);
  }
}
.aisatu .flex {
  align-items: center;
}

.aisatu .casetitle {
  font-weight: bold;
  font-size: 4rem;
}

.bengoshi_img {
  width: 250px;
}

@media screen and (max-width: 768px) {
  .good_timing {
    padding: 0;
  }
  .good_timing2 {
    margin: 40px 0;
  }
  .good_timing h1,
  .good_timing2 h1 {
    font-size: 2.5rem;
    font-weight: 600;
    font-family: "Noto Serif JP";
    text-align: center;
    color: #bf5637;
    text-shadow: 3px 3px 0 #fff, -3px -3px 0 #fff, -3px 3px 0 #fff, 3px -3px 0 #fff, 0px 3px 0 #fff, 0 -3px 0 #fff, -3px 0 0 #fff, 3px 0 0 #fff;
    font-feature-settings: "palt";
    margin: 15px 0;
    line-height: 1.5;
  }
  .good_timing h1::after {
    content: "相談のタイミング";
    color: #171717;
    font-size: 3.5rem;
    display: block;
    margin-top: -10px;
  }
  .good_timing h2 {
    text-align: left;
    font-size: 2rem;
    font-weight: bold;
  }
  .good_timing h2 span,
  .good_timing2 h2 span {
    padding: 0 4px;
    margin: 0 3px;
    background: #ffe5ac;
    font-weight: bold;
  }
  .teokure_title {
    border-bottom: 3px solid;
    align-items: flex-end;
    margin-bottom: 30px;
  }
  .teokure_title p {
    font-size: 2rem;
    font-weight: bold;
  }
  .teokure_title img {
    width: 70px;
  }
  .teokure {
    background: #e9e9e9;
    padding: 25px 10px;
    line-height: 1.4;
    margin-top: 20px;
  }
  .teokure ul li {
    margin-bottom: 15px;
    margin-left: 5px;
  }
  .teokure ul li span {
    font-weight: bold;
  }
  .good_timing2 .sm_only img:first-child {
    width: 75px;
    margin: 0 auto;
    height: auto;
    display: block !important;
  }
  .good_timing2 .flex {
    align-items: center;
  }
  .timing_img {
    width: 100%;
    display: block;
    margin: 20px auto;
  }
  .ranking img {
    width: 30px;
    margin-right: 10px;
  }
  .ranking .flex {
    align-items: flex-end;
    justify-content: center;
  }
  .ranking .flex p {
    font-size: 2rem;
    line-height: 1;
  }
  .ranking .ranking_title {
    text-align: center;
    font-size: 2rem;
    margin: 15px 0;
    font-weight: bold;
    line-height: 1.4;
  }
  .bengoshi_img {
    width: 130px;
  }
  .aisatu .flex {
    display: flex;
    flex-flow: column;
    align-items: center;
  }
  .aisatu .flex .img {
    display: flex;
    flex-flow: column;
    align-items: center;
  }
  .aisatu .casetitle {
    font-weight: bold;
    font-size: 2rem;
  }
}
/* 質上げ施策 */
.info {
  width: 100%;
  background: rgba(255, 255, 255, 0.77);
  border: 2px solid #ba0000;
  margin: 15px auto 0px;
  padding: 15px 13%;
  text-align: left;
  font-size: 1.7rem;
}
.info.all_info {
  padding: 15px 3%;
}
.info .refuse {
  text-align: center;
  margin-top: 10px;
}
.info .refuse small {
  color: #bc251d;
}
.info .gengaku {
  background-color: #eef7f6;
  padding: 10px 0;
  margin-bottom: 10px;
}
.info .gengaku p {
  color: #005868;
}
.info .seikyu {
  background-color: #f7f2f4;
  padding: 10px 0;
}
.info .seikyu p {
  color: #ab4126;
}
@media screen and (min-width: 768px) {
  .info .gengaku,
  .info .seikyu {
    padding: 10px 50px;
  }
}
.info .gengaku p,
.info .seikyu p {
  text-align: center;
  font-weight: bold;
  margin: 0;
}

.info h3 {
  text-align: center;
  color: #8b1000;
  font-size: 25px;
  margin-bottom: 10px;
  font-size: 2rem;
  line-height: 1.3;
}

.info p.titlein {
  color: #c00;
  text-align: center;
  font-weight: bold;
}

ul.asterisk {
  /* width: 900px; */
  /* margin: auto; */
  flex-wrap: wrap;
  font-weight: bold;
  font-size: 2rem;
  justify-content: space-evenly;
}
ul.asterisk small {
  margin-left: -28px;
}

ul.asterisk li {
  list-style-type: none;
  margin-bottom: 5px;
}
ul.asterisk li span {
  color: #c64029;
}

ul.asterisk li:before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f00d";
  font-size: 22px;
  color: #c64029;
  margin: -2px -24px;
}

.titleinsub {
  text-align: center;
  background: white;
  color: #cc0200;
  margin-top: 5px;
}

@media screen and (max-width: 768px) {
  .info {
    padding: 15px 10px;
    font-size: 1.5rem !important;
    width: 100%;
  }
  .info .refuse {
    font-size: unset;
  }
  .info h3 {
    font-size: 1.8rem;
  }
  ul.asterisk {
    margin-left: 35px;
    font-size: 1.5rem;
  }
  ul.asterisk li:before {
    margin: -6px -25px;
  }
}
.solution {
  background: #fffdf9;
  background-image: linear-gradient(90deg, #fff7e5 1px, transparent 0), linear-gradient(#fff7e5 1px, transparent 0);
  background-size: 10px 10px;
  padding: 3px;
}

.solution .contents {
  margin: 100px auto 0;
}

.solution_title_pc {
  width: 80%;
  display: block;
  margin: 0 auto;
}

.solution .flex {
  align-items: flex-end;
  margin-top: 80px;
}

.solution .flex p {
  font-size: 2.3rem;
  font-weight: bold;
  margin-bottom: 100px;
}

.solution .flex span {
  color: #ff822d;
  background: linear-gradient(transparent 77%, #ffeec9 77%);
  border-radius: 2px;
  padding: 4px 8px;
  margin: 0px 4px;
}

/* .solution .flex img {
    width: 450px;
} */
.solution_bottom {
  background: #fff1ce;
  position: relative;
  font-weight: bold;
  text-align: center;
  border-radius: 7px;
  padding: 10px 0;
  font-size: 2.3rem;
}

.solution_bottom span {
  font-size: 3.6rem;
  color: #e57b00;
}

.solution_bottom::before {
  position: absolute;
  left: 50%;
  content: "";
  display: block;
  border: 20px solid transparent;
  border-top: 20px solid #fff1ce;
  transform: translateX(-50%);
  bottom: -40px;
}

@media screen and (max-width: 768px) {
  .solution_title_pc {
    width: 98%;
  }
  .solution .flex p {
    font-size: 2rem;
    margin-bottom: 30px;
  }
  .solution .flex {
    display: block;
    margin-top: 30px;
  }
  .solution .flex img {
    width: 200px;
    display: block;
    margin: 0 auto;
  }
  .solution .contents {
    margin: 30px 0 0;
    padding-bottom: 0;
  }
}
.chart img {
  width: 100%;
}

.page-top__meritTable {
  font-weight: bold;
  border-spacing: 0;
  border-collapse: separate;
}

.page-top__meritTable {
  width: 100%;
  margin: 0 auto 16px;
}

.page-top__meritTable .-tableHead {
  font-size: 2.6rem;
  font-weight: bold;
  padding: 1em 0;
  text-align: center;
  vertical-align: middle;
  line-height: 1.3;
}

.page-top__meritTable .-tableHead.-saimType {
  color: #163251;
  width: 28%;
  background: #e5e5e5;
}

.page-top__meritTable .-tableHead.-merit,
.page-top__meritTable .-tableHead.-demerit {
  color: #fff;
  width: 36%;
}

.page-top__meritTable .-tableHead.-merit {
  background: #ff822d;
}

.page-top__meritTable .-tableHead.-demerit {
  background-color: #7e7e7d;
}

.page-top__meritTable .-tableBody {
  position: relative;
  padding: 1em;
  border-bottom: 1px solid #e5e5e5;
  vertical-align: middle;
  z-index: 1;
}

.page-top__meritTable .-tableBody p {
  padding: 0px 0px 0px 14px;
  display: inline-flex;
}

.page-top__meritTable .-tableBody p::before {
  content: "・";
}

.page-top__meritTable .-tableBody.-saimType.-last {
  border-bottom: 5px solid #e5e5e5;
}

.page-top__meritTable .-tableBody.-merit.-last {
  border-bottom: 5px solid #ff822d;
}

.page-top__meritTable .-tableBody.-demerit.-last {
  border-bottom: 5px solid #7e7e7d;
}

.page-top__meritTable .-tableBody.-saimType {
  border-left: 5px solid #e5e5e5;
  text-align: center;
  line-height: 1.5;
  background: #fff;
}

.page-top__meritTable .-tableBody.-merit {
  background: #fff7e4;
  border-left: 4px solid #ff822d;
  border-right: 4px solid #ff822d;
}

.page-top__meritTable .-tableBody.-merit::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  display: inline-block;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  border: 25px solid #fff;
  z-index: -1;
}

.page-top__meritTable .-tableBody.-demerit {
  position: relative;
  background: #fff8f8;
  border-right: 4px solid #7e7e7d;
  z-index: 1;
}

.page-top__meritTable .-tableBody.-saimType {
  color: #163251;
  font-size: 1.25em;
  font-weight: bold;
}

.page-top__meritTable .-tableBody.-merit,
.page-top__meritTable .-tableBody.-demerit {
  font-size: 1em;
}

.page-top__meritTable .-tableBody.-batsu::before,
.page-top__meritTable .-tableBody.-batsu::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  display: block;
  height: 100px;
  width: 24px;
  background-color: #fff;
  z-index: -1;
}

.page-top__meritTable .-tableBody.-batsu::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.page-top__meritTable .-tableBody.-batsu::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.page-top__meritTable .-tableBody.-sankaku::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  display: block;
  width: 100px;
  height: 100px;
  background-image: url(/wp/wp-content/themes/saimu_seiri/img/top/img-sankaku.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  z-index: -1;
}

.page-case__article--icon img {
  width: 101px;
  height: auto;
}

.page-case__tag--personal {
  width: 12em;
}

.page-case__date--top {
  margin-bottom: 24px;
  align-items: center;
}

.page-case__personal {
  width: 30%;
}

.page-case__personal--icon {
  margin-bottom: 1em;
}

.page-case__personal--icon img {
  width: 140px;
  height: auto;
}

.page-case__datelist {
  border-radius: 5px;
  border: 2px solid #d2d2d2;
  overflow: hidden;
  color: #163251;
  width: 100%;
}

.page-case__datelist dt,
.page-case__datelist dd {
  padding: 8px;
}

.page-case__datelist dt {
  font-weight: bold;
  width: 45%;
  background-color: #f5f5f5;
}

.page-case__datelist div {
  display: flex;
}

.page-case__datelist div + div {
  border-top: 1px dashed #d2d2d2;
}

.page-case__datelist.-min dt,
.page-case__datelist.-min dd {
  padding: 8px;
}

.page-case__datelist.-min dt {
  width: 14%;
}

.page-case__datetable {
  width: 100%;
  border-collapse: separate;
  border-bottom: 2px solid #d2d2d2;
}

.page-case__datetable--wrap + .page-case__datetable--wrap {
  border-top: 2px dashed #d2d2d2;
}

.page-case__datetable--head {
  width: 40%;
  text-align: center;
  color: #fff;
  font-weight: bold;
  font-size: 1.125em;
  padding: 16px 0;
}

.page-case__datetable--head.-before {
  background-color: #7e7e7d;
  border-radius: 5px 0 0 0;
}

.page-case__datetable--head.-after {
  background-color: #ff822d;
  border-radius: 0 5px 0 0;
}

.page-case__datetable--sidehead {
  width: 20%;
  text-align: right;
  color: #163251;
  font-weight: bold;
  border-right: 2px solid #d2d2d2;
  border-left: 2px solid #d2d2d2;
  vertical-align: middle;
  padding: 0 1em;
}

.page-case__datetable--sidehead.-first {
  border-radius: 5px 0 0 0;
  border-top: 2px solid #d2d2d2;
}

.page-case__datetable--value {
  text-align: center;
  font-weight: 900;
  line-height: 1;
  padding: 16px 32px;
  vertical-align: middle;
  border-right: 2px solid #d2d2d2;
}

.page-case__datetable--value.-before {
  position: relative;
  color: #a8a8a8;
}

.page-case__datetable--value.-before::before {
  position: absolute;
  right: -16px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  background-color: #7e7e7d;
  width: 45px;
  height: 24px;
}

.page-case__datetable--value.-before::after {
  position: absolute;
  right: -50px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  display: inline-block;
  border: 20px solid transparent;
  border-left: 20px solid #7e7e7d;
}

.page-case__datetable--value.-after {
  color: #ff822d;
}

.page-case__datetable--value.-after small {
  color: #333;
  font-weight: normal;
}

.page-case__datetable--value.-after-plus {
  color: #f33939;
}

.page-case__datetable .-line th,
.page-case__datetable .-line td {
  border-top: 2px dashed #d2d2d2;
}

.page-case__datetable .-large {
  font-size: 3em;
}

.c-tag {
  display: inline-block;
  padding: 0.3em 1em 0.25em;
  min-width: 72px;
  border-radius: 3px;
  letter-spacing: 0;
  line-height: 1;
  font-weight: bold;
  text-align: center;
}

.c-tag.-debt {
  background-color: #fcf1c6;
  margin-right: 10px;
}

.page-case__case {
  color: #ff822d;
  font-weight: bold;
  padding: 4px 20px 2px;
  background-color: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 3px;
  margin-right: 8px;
}

.c-tag.-type {
  background-color: #e6def9;
}

.page-case__article--tag {
  padding-bottom: 0.5em;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

@media screen and (max-width: 768px) {
  .page-top__meritTable .-tableBody p {
    padding: 0;
    display: inline-flex;
  }
  .page-top__meritTable .-tableBody.-merit,
  .page-top__meritTable .-tableBody {
    padding: 5px;
  }
  .page-top__meritTable .-tableBody.-merit,
  .page-top__meritTable .-tableBody.-demerit {
    font-size: 1.5rem;
  }
  .page-top__meritTable .-tableBody.-saimType {
    font-size: 1.7rem;
  }
  .page-top__meritTable .-tableBody.-merit {
    border-left: 2px solid #ff822d;
    border-right: 2px solid #ff822d;
  }
  .page-top__meritTable .-tableBody.-demerit {
    border-right: 2px solid #7e7e7d;
  }
  .page-top__meritTable .-tableBody.-merit.-last {
    border-bottom: 3px solid #ff822d;
  }
  .page-top__meritTable .-tableBody.-demerit.-last {
    border-bottom: 3px solid #7e7e7d;
  }
  .page-top__meritTable .-tableBody.-saimType {
    border-left: 2px solid #e5e5e5;
  }
  .page-top__meritTable .-tableBody.-saimType.-last {
    border-bottom: 3px solid #e5e5e5;
  }
  .page-case__date--top {
    display: flex;
    flex-flow: column;
    margin-bottom: 0;
  }
  .page-case__personal {
    width: 100%;
  }
  .c-center img {
    width: 120px;
    height: -moz-fit-content;
    height: fit-content;
    margin-bottom: 20px;
  }
  .page-case__datelist {
    width: 100%;
  }
  .page-top__meritTable .-tableHead {
    font-size: unset;
  }
  .page-case__datetable {
    border-bottom: 1px solid #d2d2d2;
  }
  .page-case__datelist.-min dt {
    width: 24%;
  }
  .page-case__datetable--head {
    font-size: 1em;
    padding: 8px 0;
    width: 30%;
  }
  .page-case__datetable--head.-before {
    border-radius: 3px 0 0 0;
  }
  .page-case__datetable--head.-after {
    border-radius: 0 3px 0 0;
  }
  .page-case__datetable--sidehead.-first {
    border-radius: 3px 0 0 0;
    border-top: 1px solid #d2d2d2;
  }
  .page-case__datetable--sidehead {
    font-size: 0.75em;
    padding: 0 8px;
    text-align: left;
    letter-spacing: 0;
    border-right: 1px solid #d2d2d2;
    border-left: 1px solid #d2d2d2;
  }
  .page-case__datetable--value {
    padding: 14px 8px;
    font-weight: bold;
    border-right: 1px solid #d2d2d2;
  }
  .page-case__datetable .-large {
    font-size: 1em;
  }
  .page-case__datetable--value.-before::before,
  .page-case__datetable--value.-before::after {
    content: none;
  }
  .page-case__datetable--value.-after small {
    display: inline-block;
    text-align: left;
    margin-top: 4px;
  }
  .page-case__datetable .-line th,
  .page-case__datetable .-line td {
    border-top: 1px dashed #d2d2d2;
  }
  .page-case__article--tag {
    font-size: 1.3rem;
  }
  .c-tag {
    padding: 5px;
  }
}
.case_05 {
  display: flex;
  background: #fff;
  position: relative;
  color: black(0, 13, 102);
  box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1);
}

.case_05 img {
  height: auto;
  width: 400px;
}

.c-center {
  text-align: center;
}

.step_bottom {
  width: 100%;
  display: block;
  margin: 0 auto;
}

.merite {
  background: #fffdf9;
  background-image: linear-gradient(90deg, #fff7e5 1px, transparent 0), linear-gradient(#fff7e5 1px, transparent 0);
  background-size: 10px 10px;
  padding: 3px;
}

@media screen and (max-width: 768px) {
  .case_05 {
    display: block;
  }
  .case_05 img {
    width: 100%;
    height: 215px;
  }
  .voice_box {
    padding: 20px 10px;
  }
  .cost_table h1 {
    font-size: 2rem;
  }
  .cost_table h1 span {
    font-size: 2.3rem;
  }
}
.action_top_text {
  text-align: center;
  font-weight: bold;
  color: #688d02;
  padding: 10px 0 5px;
  width: 80%;
  margin: 0 auto 0px;
  line-height: 1.5;
}

.action_top_text.senyo {
  background: #688d02;
  color: white;
  padding: 5px 30px;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 34px;
  margin-bottom: 0;
}

span.dot_text {
  display: inline-block;
  position: relative;
}

span.dot_text::before {
  position: absolute;
  top: -0.7em;
  left: 50%;
  transform: translate(-50%, 0);
  color: #688d02;
  font-size: 1em;
  content: "・";
}

.sp_left {
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .action_top_text {
    margin: 0;
    width: auto;
    text-align: center;
    display: block;
    font-size: 1.4rem;
    border-radius: 34px;
    margin-bottom: -10px;
  }
  .action_top_text.senyo {
    padding: 5px 15px;
    margin-bottom: -3px;
    border-radius: 12px;
  }
  .sp_left {
    text-align: left;
    display: inline-block;
    margin-left: 10px;
  }
}
.tel_area {
  position: fixed;
  right: 0;
  z-index: 9999999;
  top: 15%;
}

.tel_banner {
  background-color: #bf5637;
  padding: 30px 15px 30px;
  border-radius: 10px;
  color: white;
  font-size: 12px;
  text-align: center;
  line-height: 1.3;
}

.tel_ban_num {
  font-weight: bolder;
  font-size: 50px;
  margin: 0 auto;
  writing-mode: vertical-rl;
  text-wrap: nowrap;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  max-height: 300px;
  line-height: 1.2;
  margin-top: 53px;
  margin-bottom: 15px;
  margin-right: -5px;
  font-family: "Oswald";
}

.saitama {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  text-align: initial;
  -webkit-writing-mode: vertical-rl;
  font-size: 18px;
  text-align: center;
}

.saitama span {
  color: #f8ff09;
  font-weight: bold;
  padding: 6px 0;
  font-size: 2.4rem;
  letter-spacing: 0.2em;
}

.tel_ban_text {
  font-size: 14px;
  line-height: 1.2;
}

.tel_gif {
  width: 39px;
  display: block;
  margin: 0 auto;
  margin-bottom: 30px;
}

.zenkoku {
  padding: 0px 0 20px 0;
}
.zenkoku img {
  width: 940px;
  margin: 0px auto;
  display: block;
}

.action_soudan_img {
  width: 100%;
  display: block;
  margin: 10px 0 127px;
}

@media screen and (max-width: 768px) {
  .action_soudan_img {
    margin-bottom: 40px;
    margin-top: 20px;
  }
  .zenkoku {
    padding: 0px 0 20px 0;
  }
  .zenkoku img {
    width: 100%;
  }
}
.appeal_point {
  margin-bottom: 50px;
}

.appeal_point.pc_flex {
  align-items: inherit;
  flex-wrap: wrap;
}

.appeal_point .appeal_point_img {
  width: 100%;
  height: 180px;
  margin-top: 20px;
  -o-object-fit: cover;
     object-fit: cover;
}

.appeal_point .appeal_point_title {
  color: #ffb200;
  font-size: 2.3rem;
  line-height: 1.6;
  font-weight: 600;
  margin: 60px 0 20px;
  text-align: center;
  letter-spacing: 0.04em;
}

.appeal_point .appeal_point_title + p {
  height: auto;
  line-height: 2;
}

.appeal_point .ap01_text {
  position: relative;
  line-height: 1.8;
  background-color: #fffbf1;
  padding: 35px 20px;
  margin-bottom: 50px;
  border: 4px solid #f8ad00;
}

.appeal_point .ap01_text::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f058";
  font-size: 46px;
  color: #f8ad00;
  margin: -25px 39%;
}

.ap01_text span {
  font-weight: 600;
  background: linear-gradient(transparent 77%, #ffe5ac 77%);
}

@media screen and (min-width: 769px) {
  .appeal_point .appeal_point_img {
    height: 240px;
  }
  .appeal_point .ap01_text {
    width: 48%;
    justify-content: space-between;
  }
  .appeal_point .appeal_point_title {
    font-size: 2.8rem;
  }
  .appeal_point .appeal_point_title + p {
    line-height: 2;
  }
  .appeal_point .ap01_text::before {
    margin: -25px 41%;
  }
}
.al_top_bunner {
  background: #d20000;
  padding: 30px 0;
}

.al_top_bunner img {
  width: 900px;
  display: block;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .al_top_bunner {
    padding: 15px 0;
  }
  .al_top_bunner img {
    width: 95%;
    display: block;
    margin: 0 auto;
  }
}
.max_img_box img {
  width: 800px;
  margin: 0 auto;
  display: block;
  position: relative;
  z-index: 15;
}
@media screen and (max-width: 768px) {
  .max_img_box img {
    width: 100%;
  }
}

.atera_area .atera {
  width: 100%;
  display: block;
  margin: 0 auto;
}
.atera_area .atera_QA {
  width: 600px;
  display: block;
  margin: 60px auto 30px;
}
@media screen and (max-width: 768px) {
  .atera_area .atera_QA {
    width: 100%;
    margin: 40px auto 30px;
  }
}
.atera_area .accordion-area {
  margin: 0;
}
.atera_area .accordion-area .box {
  background: #ffd05a;
}

.pattern-vertical-lines-sm {
  background-image: repeating-linear-gradient(to right, #f4f4f4, #f4f4f4 1px, transparent 1px, transparent);
  background-size: 5px 10px;
}

.gray_gradient {
  background-image: linear-gradient(359deg, rgb(215, 215, 215), rgb(255, 255, 255));
}

h2.action_top {
  position: relative;
  padding: 15px;
  border-radius: 5px;
  background-color: #f8e4e9;
  color: #232323;
  font-weight: bold;
  font-size: 33px;
  text-align: center;
  font-family: "Noto Serif JP";
}
@media screen and (max-width: 768px) {
  h2.action_top {
    margin-bottom: 0;
    padding: 15px 0;
    font-size: 23px;
  }
}
h2.action_top:before {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: traslateX(-50%) rotate(-20deg);
  border-left: 8px dotted #e6bcc7;
  height: 49px;
  content: "";
}

.contact_flow {
  background: #fef4ea;
  width: 100%;
  margin: 8px auto 40px;
}

h2.kasan {
  position: relative;
  padding: 15px;
  outline: 2px solid #333;
  outline-offset: 2px;
  background: #d4e4ff;
  color: #333;
  margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
  h2.kasan {
    font-size: 1.5rem;
    padding: 8px;
  }
}
h2.kasan:before {
  position: absolute;
  top: calc(100% + 2px);
  left: 50%;
  height: 20px;
  width: 15px;
  background-color: white;
  border-right: 3px solid #333;
  content: "";
}

.aisatu .flex {
  align-items: center;
  justify-content: space-around;
  flex-flow: column;
}

.yusen {
  width: 100%;
  margin: -40px 0 -20px;
}
@media screen and (max-width: 768px) {
  .yusen {
    margin: 0px 0 30px;
  }
}

.hosoku {
  font-size: small;
  background-color: rgb(238, 238, 238);
  padding: 8px;
  margin: 15px 0;
}

.pattern-diagonal-lines-xl {
  background: #f0ebe4;
  background-image: repeating-linear-gradient(45deg, #ebdbc5 0, #ebdbc5 1px, transparent 0, transparent 50%);
  background-size: 78px 78px;
}

.problem-appeal {
  position: relative;
  z-index: 10;
}

.problem-appeal::after {
  content: "";
  display: block;
  width: 100%;
  background-color: #eeeeee;
  background: #eeeeee url(../images/bg_diagonal.webp) repeat;
  clip-path: polygon(0 0, 50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%);
  position: relative;
  z-index: 3;
  height: 90px;
  transform: translateY(1px);
}
@media screen and (max-width: 480px) {
  .problem-appeal::after {
    height: 50px;
  }
}

.problem-appeal_begie::after {
  background: #e8e8ea;
}

.problem-appeal_blue::after {
  background: #def3ff url(../images/bg_diagonal.webp) repeat;
}

.tel_free {
  font-weight: bold;
  width: -moz-fit-content;
  width: fit-content;
}

.right_arrow {
  position: relative;
  padding: 8px;
  background: #f6f0df;
}
.right_arrow::after {
  position: absolute;
  top: 0;
  right: -10px;
  height: 0;
  width: 0;
  border-style: solid;
  border-width: 28px 0 28px 10px;
  border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #f6f0df;
  content: "";
}
.right_arrow.right_arrow_text {
  font-weight: bold;
  font-size: 2rem;
  text-align: center;
  height: 56px;
  color: #2a3a20;
  width: 140px;
  line-height: 2.3;
  margin-right: 40px;
}

.point_area {
  counter-reset: number 0;
}
.point_area .point_box {
  margin-top: 120px;
}
.point_area .point_box:first-child {
  margin-top: 100px;
}
@media screen and (max-width: 480px) {
  .point_area .point_box {
    margin-top: 20px;
  }
  .point_area .point_box:first-child {
    margin-top: 30px;
  }
}
.point_area .point_box img {
  width: 250px;
  margin-left: 30px;
  height: 380px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 480px) {
  .point_area .point_box img {
    width: 100%;
    height: 150px;
    padding: 0 20px;
    margin: 10px 0 0 0;
  }
}
.point_area .point_box img.point02_img {
  -o-object-position: 80% 100%;
     object-position: 80% 100%;
}
.point_area .point_box img.point03_img {
  -o-object-position: 95% 100%;
     object-position: 95% 100%;
}
.point_area .point_box img.point04_img {
  -o-object-position: 59% 100%;
     object-position: 59% 100%;
}
.point_area .point_box img.point05_img {
  -o-object-fit: unset;
     object-fit: unset;
  width: 100%;
  height: unset;
  margin: 0;
}
.point_area .point_box img.point06_img {
  -o-object-position: 93% 100%;
     object-position: 93% 100%;
}
@media screen and (max-width: 480px) {
  .point_area .point_box img.point06_img {
    -o-object-position: 93% 46%;
       object-position: 93% 46%;
  }
}
.point_area .point_box img.sonnashi_img {
  width: 100%;
  margin: 0;
  margin-top: -80px;
  margin-bottom: 30px;
  height: unset;
}
@media screen and (max-width: 480px) {
  .point_area .point_box img.sonnashi_img {
    margin: 0 0 13px 0;
    padding: 0;
  }
}
.point_area .point_box .point_text {
  background-color: white;
  padding: 50px 30px;
  box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1);
  padding-left: 70px;
  text-align: justify;
  position: relative;
}
@media screen and (max-width: 480px) {
  .point_area .point_box .point_text {
    padding: 35px 0px 35px;
  }
  .point_area .point_box .point_text p {
    padding: 0 20px;
  }
}
.point_area .point_box .point_text::before {
  position: absolute;
  counter-increment: number 1;
  font-size: 1.4rem;
  content: "" counter(number, decimal-leading-zero);
  right: 0px;
  top: -140px;
  display: block;
  /* width: 123px; */
  /* height: 163px; */
  font-size: 13rem;
  z-index: 222;
  font-family: "Noto serif JP";
  color: #eccdc6;
}
@media screen and (max-width: 480px) {
  .point_area .point_box .point_text::before {
    content: none;
  }
}
.point_area .point_box .point_text h1 {
  font-size: 3rem;
  margin-bottom: 20px;
  line-height: 1.6;
  color: #bb0000;
  font-weight: bold;
  font-family: "Noto serif JP";
  letter-spacing: 0.1em;
}
@media screen and (max-width: 480px) {
  .point_area .point_box .point_text h1 {
    padding: 0 20px;
    font-size: 2.5rem;
    line-height: 1.6;
    font-weight: bold;
    letter-spacing: 0em;
    text-align: center;
    margin-bottom: 15px;
  }
}

.compare_content_area .compare_content_inner img {
  width: 100%;
  padding-bottom: 90px;
}
@media screen and (max-width: 480px) {
  .compare_content_area .compare_content_inner img {
    padding-bottom: 50px;
  }
  .compare_content_area .compare_content_inner img:last-child {
    padding-bottom: 60px;
  }
}
.compare_content_area .compare_content_inner .link_houki {
  position: relative;
}
.compare_content_area .compare_content_inner .link_houki img {
  border: none;
}
.compare_content_area .compare_content_inner .link_houki .link_houki_ {
  position: absolute;
  width: 360px;
  bottom: 110px;
  left: 30px;
}
.compare_content_area .compare_content_inner .link_houki .link_houki_ img {
  margin: 0;
  padding: 0;
}
.compare_content_area .sub_title {
  text-align: center;
  margin-top: 40px;
}
.compare_content_area .pc_flex {
  flex-wrap: nowrap;
  align-items: center;
  padding-left: 50px;
  background: #fff9e9;
  border-radius: 30px;
  margin-top: -19px;
  padding-top: 20px;
}
@media screen and (max-width: 480px) {
  .compare_content_area .pc_flex {
    border-radius: 12px;
    padding: 20px 20px 0;
    margin: 20px 0 0;
  }
  .compare_content_area .pc_flex p span {
    display: block;
    width: 60%;
    margin-top: 20px;
  }
}
.compare_content_area .pc_flex img {
  width: 300px;
  margin-bottom: 0;
  margin-left: 30px;
  margin-top: -70px;
}
@media screen and (max-width: 480px) {
  .compare_content_area .pc_flex img {
    width: 134px;
    margin: -110px -10px 0px auto;
    display: block;
  }
}

.topIcon_content_area {
  margin-top: 40px;
}
.topIcon_content_area .sub_title {
  text-align: center;
}
.topIcon_content_area .topIcon_content_box {
  margin-top: 130px;
}
@media screen and (max-width: 768px) {
  .topIcon_content_area .topIcon_content_box {
    margin-top: 90px;
  }
}
.topIcon_content_area .topIcon_content_box img {
  display: block;
  width: 150px;
  margin: -60px auto;
}
@media screen and (max-width: 768px) {
  .topIcon_content_area .topIcon_content_box img {
    width: 80px;
    margin: -40px auto;
  }
}
.topIcon_content_area .topIcon_content_box .topIcon_text {
  background-color: #fffdfc;
  padding: 80px 40px 40px 40px;
}
@media screen and (max-width: 768px) {
  .topIcon_content_area .topIcon_content_box .topIcon_text {
    padding: 50px 4% 25px 4%;
  }
}
.topIcon_content_area .topIcon_content_box .topIcon_text .flex {
  align-items: center;
}
.topIcon_content_area .topIcon_content_box .topIcon_text .flex img {
  margin-left: 50px;
  margin-bottom: -10px;
}
@media screen and (max-width: 768px) {
  .topIcon_content_area .topIcon_content_box .topIcon_text .flex {
    flex-wrap: nowrap;
  }
  .topIcon_content_area .topIcon_content_box .topIcon_text .flex img {
    margin: 10px 0px 0 20px;
  }
}
.topIcon_content_area .topIcon_content_box .topIcon_text h1 {
  font-size: 3rem;
  margin-bottom: 20px;
  line-height: 1.6;
  text-align: center;
  font-weight: bold;
  color: #005896;
}
@media screen and (max-width: 768px) {
  .topIcon_content_area .topIcon_content_box .topIcon_text h1 {
    font-size: 2rem;
  }
}
.topIcon_content_area .topIcon_content_box .topIcon_text span {
  color: #982642;
}

/* Q&A */
.qa dl {
  width: 900px;
  box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.15);
  border-radius: 8px;
  background-color: #fff;
  margin: 20px auto;
  position: relative;
}
.qa dl:first-child {
  margin-top: 0;
}
@media screen and (max-width: 480px) {
  .qa dl {
    width: 100%;
  }
}
.qa dl dt {
  line-height: 30px;
  padding-top: 30px;
  padding-bottom: 30px;
  padding-right: 90px;
  padding-left: 96px;
  position: relative;
  cursor: pointer;
  font-weight: bold;
}
@media screen and (max-width: 480px) {
  .qa dl dt {
    padding: 20px 45px;
  }
}
.qa dl dt::after {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f055";
  font-size: 30px;
  color: #ab4126;
  top: 50%;
  transform: translateY(-50%);
  right: 40px;
}
@media screen and (max-width: 480px) {
  .qa dl dt::after {
    font-size: 19px;
    right: 15px;
  }
}
.qa dl dt.opened::after {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f056";
  font-size: 30px;
  color: #707070;
  top: 50%;
  transform: translateY(-50%);
  right: 40px;
}
@media screen and (max-width: 480px) {
  .qa dl dt.opened::after {
    font-size: 19px;
    right: 15px;
  }
}
.qa dl dt p::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "Q";
  font-size: 40px;
  color: #ab4126;
  left: 40px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 480px) {
  .qa dl dt p::before {
    font-size: 25px;
    left: 14px;
  }
}
.qa dl dd {
  text-align: justify;
  display: none;
  margin-left: auto;
  margin-right: auto;
  border-top: 2px solid #f5f3eb;
  padding: 26px 80px 36px 96px;
}
@media screen and (max-width: 480px) {
  .qa dl dd {
    padding: 20px;
  }
}
.qa dl dd span {
  color: #bb0000;
  font-weight: bold;
}

.gengaku_QA .qa dl dt::after {
  color: #005868;
}
.gengaku_QA .qa dl p::before {
  color: #005868;
}

.flow_list {
  margin: 0 auto 80px;
  counter-reset: number 0;
}
.flow_list .flex {
  flex-wrap: nowrap;
}

.flow_listItem {
  position: relative;
  z-index: 10;
  justify-content: center;
  align-items: flex-start;
}
.flow_listItem:nth-last-of-type(n + 2)::before {
  content: "";
  position: absolute;
  bottom: -60px;
  left: 37px;
  z-index: 1;
  display: block;
  width: 0;
  height: calc(100% - 56px - 15px);
  border-right: 2px dotted #3c2c25;
}
.flow_listItem + .flow_listItem {
  margin-top: 65px;
}
.flow_listItem .step {
  position: relative;
  z-index: 10;
  margin-right: 20px;
  padding-top: 5px;
}
@media screen and (max-width: 480px) {
  .flow_listItem .step {
    margin-right: 10px;
  }
}
.flow_listItem .step::before {
  counter-increment: number 1;
  font-size: 1.4rem;
  content: "STEP " counter(number, decimal-leading-zero);
  display: block;
  font-weight: 700;
  color: #005896;
  text-align: center;
  font-family: "Noto sans JP";
}
.flow_listItem .step .ic {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 78px;
  height: 78px;
  background-color: #005896;
  border-radius: 50%;
  box-shadow: 0 2px 3px rgba(125, 55, 4, 0.26);
}
.flow_listItem .step .ic img {
  height: 60px;
}
@media screen and (max-width: 480px) {
  .flow_listItem .step .ic {
    width: 50px;
    height: 50px;
  }
  .flow_listItem .step .ic img {
    height: 35px;
  }
}

.flow_listItem_content {
  width: calc(100% - 78px);
}
.flow_listItem_content .ttl {
  font-size: 3rem;
  text-align: left;
  color: #bb0000;
  font-weight: bold;
  margin: 0 auto;
  font-family: "Noto Serif JP";
}
.flow_listItem_content .txtBox {
  padding: 20px 25px;
  background: #efe8e8;
  border-radius: 20px;
  box-shadow: 0 2px 3px #efe8e8;
}
.flow_listItem_content .flow_tel {
  background: #bb0000;
  width: 45%;
  margin: 20px auto;
  color: white;
  border-radius: 10px;
  padding: 10px 0;
  font-weight: bold;
  box-shadow: 0px 2px 2px rgba(93, 79, 83, 0.3215686275);
  position: relative;
  padding-left: 68px;
}
.flow_listItem_content .flow_tel::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f2a0";
  font-size: 21px;
  color: #ffffff;
  left: 34px;
  top: 53%;
  rotate: initial;
  transform: translateY(-50%) rotate(-36deg);
}
.flow_listItem_content .flow_mail {
  border: 2px solid #bb0000;
  width: 45%;
  margin: 20px auto;
  color: #bb0000;
  border-radius: 10px;
  padding: 10px 0;
  font-weight: bold;
  box-shadow: 0px 2px 2px rgba(93, 79, 83, 0.3215686275);
  position: relative;
  padding-left: 68px;
}
.flow_listItem_content .flow_mail::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0e0";
  font-size: 21px;
  color: #bb0000;
  left: 27px;
  top: 53%;
  rotate: initial;
  transform: translateY(-50%);
}
.flow_listItem_content .info {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .flow_list {
    margin-bottom: 50px;
    margin-top: 30px;
  }
}
@media screen and (max-width: 500px) {
  .flow_listItem + .flow_listItem {
    margin-top: 20px;
  }
  .flow_listItem:nth-last-of-type(n + 2)::before {
    bottom: -20px;
    left: 28px;
    height: calc(100% - 52px - 20px);
  }
  .flow_listItem_content .ttl {
    margin-bottom: 6px;
    font-size: 1.9rem;
    width: 100%;
  }
  .flow_listItem_content .txtBox {
    padding: 15px;
    font-size: 1.6rem;
  }
  .flow_listItem_content .flow_tel {
    width: 99%;
    margin: 10px auto;
    color: white;
    border-radius: 10px;
    padding: 5px 0;
    font-weight: bold;
    box-shadow: 0px 2px 2px rgba(93, 79, 83, 0.3215686275);
    position: relative;
    padding-left: 64px;
  }
  .flow_listItem_content .flow_tel::before {
    position: absolute;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f2a0";
    font-size: 21px;
    color: #ffffff;
    left: 34px;
    top: 53%;
    rotate: initial;
    transform: translateY(-50%) rotate(-36deg);
  }
  .flow_listItem_content .flow_mail {
    border: 2px solid #bb0000;
    width: 99%;
    margin: 10px auto;
    border-radius: 10px;
    padding: 5px 0;
    font-weight: bold;
    box-shadow: 0px 2px 2px rgba(93, 79, 83, 0.3215686275);
    position: relative;
    padding-left: 60px;
  }
  .flow_listItem_content .flow_mail::before {
    position: absolute;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0e0";
    font-size: 21px;
    left: 27px;
    top: 53%;
    rotate: initial;
    transform: translateY(-50%);
  }
  .flow_listItem_content .info .action_mark {
    width: 98%;
  }
}
.pattern-dots-sm {
  background-image: radial-gradient(#ab9891 0.6px, transparent 0.5px);
}

.pattern-dots-md {
  background-image: radial-gradient(#005896 1px, transparent 1px);
}

@keyframes infinity-scroll-right {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}

.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0;
}

.scroll-infinity__list--right {
  animation: infinity-scroll-right 40s infinite linear 0.5s both;
}

.scroll-infinity__item {
  width: 16.6666666667vw;
}
.scroll-infinity__item > img {
  width: 100%;
  height: 150px;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .scroll-infinity__item {
    width: 33.3333333333vw;
  }
  .scroll-infinity__item > img {
    height: 90px;
  }
}

#footer_CTA {
  position: fixed;
  background-color: rgba(48, 48, 48, 0.7882352941);
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 999999;
  /*はじめは非表示*/
  opacity: 0;
  transition: opacity 0.3s ease;
  padding: 0px 0 6px;
}
#footer_CTA small {
  display: unset;
}
#footer_CTA img {
  width: 23px;
}
#footer_CTA .footer_CTA_call_img {
  width: 72%;
  margin: 7px 0;
  margin-left: 3px;
}
#footer_CTA .footer_CTA_mail_img {
  width: 80%;
  margin: 7px 0;
  margin-left: 3px;
}

.footer_CTA_call {
  display: flex;
  align-items: center;
  width: 48%;
  background: linear-gradient(180deg, #ff8845 0%, #c94800 100%);
  color: white;
  font-size: 80%;
  padding: 8px 3px;
  font-weight: 500;
  border-radius: 41px;
  justify-content: center;
}
.footer_CTA_call p {
  text-align: center;
  line-height: 1.3;
  font-size: 1.5rem;
  margin-left: 5px;
  font-weight: bold;
}

.footer_CTA_mail {
  display: flex;
  align-items: center;
  width: 52%;
  background: linear-gradient(180deg, #3ac04f 0%, #005522 100%);
  color: #fff;
  font-size: 1.5rem;
  padding: 8px 6px;
  font-weight: 500;
  border-radius: 41px;
  justify-content: center;
  position: relative;
  font-weight: bold;
}
.footer_CTA_mail p {
  margin-left: 10px;
  line-height: 1.5;
  text-align: center;
}

.footer_CTA_mail_night {
  width: 100%;
  font-size: 100%;
  font-weight: bold;
  border-radius: 69px;
  padding: 10px 0 12px;
  text-decoration: underline;
}
.footer_CTA_mail_night p {
  margin-left: 20px;
}
.footer_CTA_mail_night::before {
  left: 77px;
}

#footer_CTA .attention {
  text-align: center;
  padding: 5px 0;
}
#footer_CTA .attention img {
  width: 98%;
  display: block;
  margin: 0px auto;
}

.balloon1 {
  position: relative;
  padding: 11px 0px;
  border-radius: 87px;
  color: #fff;
  background: #9d7816;
  /* margin: 10px auto; */
  margin-left: 30px;
  text-align: center;
  font-weight: bold;
  font-size: 3rem;
  line-height: 1.4;
  width: 70%;
}
@media screen and (max-width: 768px) {
  .balloon1 {
    width: 100%;
    margin: 0;
    font-size: 2rem;
  }
}

.balloon1:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #9d7816;
}

.blue_back .contents_title_shortline {
  color: white;
  padding: 1.5rem 0 8px;
  font-size: 3rem;
}
@media screen and (min-width: 768px) {
  .blue_back .contents_title_shortline {
    font-size: 4rem;
  }
}
.blue_back .contents_title_shortline::before {
  display: none;
}
.blue_back .contents_subtitle {
  color: white;
}

.emphasis_design35 {
  line-height: 1.2;
  -webkit-box-reflect: below -10px -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, 0.6));
  margin-bottom: calc(1em + 20px);
}

.readmore {
  background-color: white;
  position: relative;
  width: 98%;
  margin: 30px auto 0;
  border: 1px solid #005896;
  border-radius: 5px;
  padding: 20px 10px 55px;
  line-height: 1.8;
}
.readmore.seikyu {
  border: 1px solid #c6583d;
}
.readmore.seikyu label {
  background-color: #c6583d;
}
@media screen and (min-width: 768px) {
  .readmore {
    padding: 40px 60px 55px;
  }
}
.readmore label {
  position: absolute;
  display: table;
  left: 50%;
  bottom: 14px;
  margin: 0 auto;
  width: 109px;
  padding: 3px 0;
  color: #fff;
  text-align: center;
  border-radius: 45px;
  background-color: #005896;
  transform: translateX(-50%);
  cursor: pointer;
  z-index: 1;
  box-shadow: 1px 2px 2px rgba(0, 0, 0, 0.1098039216);
  font-size: 14px;
}
.readmore label::before {
  content: "続きを見る";
}
.readmore input[type=checkbox] {
  display: none;
}
.readmore input[type=checkbox]:checked ~ label::before {
  content: "元に戻す";
}

.readmore-content {
  position: relative;
  height: 250px;
  overflow: hidden;
  transition: max-height 0.5s ease;
}

.readmore input[type=checkbox]:checked ~ .readmore-content {
  height: auto;
  transition: max-height 0.5s ease;
}

.readmore-content::before {
  position: absolute;
  display: block;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 75px;
  background: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 50%, #fff 100%);
}

.readmore input[type=checkbox]:checked ~ .readmore-content::before {
  display: none;
}

.jirei_icon {
  width: 65px;
  margin-right: 15px;
}
@media screen and (min-width: 768px) {
  .jirei_icon {
    width: 80px;
    margin-right: 30px;
  }
}

.figureCase_label {
  width: -moz-fit-content;
  width: fit-content;
  background: #fff0f0;
  padding: 2px 12px;
  border-radius: 9px;
  color: #005896;
  margin-bottom: 10px;
  font-size: 14px;
}
@media screen and (min-width: 768px) {
  .figureCase_label {
    font-size: unset;
  }
}

.readmore-content_title {
  border-bottom: 2px dashed #d9e0e5;
  padding-bottom: 13px;
  align-items: center;
  margin-bottom: 20px;
}
.readmore-content_title .flex {
  align-items: center;
  justify-content: flex-start;
}

.figureCase_title {
  font-size: 17px;
  font-weight: bold;
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .figureCase_title {
    font-size: 2.4rem;
  }
}

.figureCase_before {
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid;
  border-radius: 16px;
  padding: 1px 15px;
  margin-bottom: 13px;
}

.figureCase_after {
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 16px;
  padding: 1px 15px;
  margin-bottom: 13px;
  width: fit-content;
  background: #ea9900;
  color: white;
  margin-top: 30px;
}

.comment_laywer {
  background: #fff8e1;
  padding: 20px 20px;
  margin-top: 27px;
  border-radius: 15px;
}
.comment_laywer > div {
  display: flex;
  align-items: center;
  margin-bottom: 13px;
}
.comment_laywer img {
  width: 78px;
  margin-right: 20px;
}

.balloon1-left {
  position: relative;
  display: inline-block;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: rgb(106, 59, 19);
  font-size: 16px;
  background: #f5d59a;
  border-radius: 10px;
}

.balloon1-left:before {
  content: "";
  position: absolute;
  top: 89%;
  left: -21px;
  margin-top: -15px;
  border: 6px solid transparent;
  border-right: 21px solid #f5d59a;
}

.balloon1-left p {
  margin: 0;
  font-size: 1.4rem;
  padding: 0;
}

.box-design6 {
  margin: 20px auto;
  padding: 20px;
  border: 2px solid #707700;
  position: relative;
  background: white;
}
@media screen and (min-width: 768px) {
  .box-design6 {
    padding: 40px;
  }
}
.box-design6 h1 {
  font-size: 2rem;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 11px;
  color: #707700;
  font-weight: bold;
  font-family: "Noto serif JP";
}
@media screen and (min-width: 768px) {
  .box-design6 h1 {
    font-size: 3rem;
  }
}

.box-design6 p {
  background-image: linear-gradient(90deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 50%, #fff 0%, #fff 100%), linear-gradient(180deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 95%, #707700 100%);
  background-size: 8px 100%, 100% 2.5em;
  line-height: 2.5;
  margin: 0;
}

.emphasis_design22 {
  text-align: center;
  font-size: 2.5rem;
  font-family: "Noto serif JP";
  font-weight: bold;
  color: #232323;
}
@media screen and (min-width: 768px) {
  .emphasis_design22 {
    font-size: 3.5rem;
    line-height: 1.5;
    margin-top: 60px;
  }
}
.emphasis_design22 span {
  color: #ffffff;
  background: #707700;
  margin: 0 0.03em;
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  line-height: 1.3;
}

@media screen and (min-width: 768px) {
  #merit > img {
    display: block;
    margin: 0 auto;
    width: 700px;
  }
  #merit .pc_flex {
    align-items: flex-start;
  }
}

.merit_box {
  margin-top: 30px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .merit_box {
    width: 49%;
  }
}
.merit_box img {
  margin-top: 10px;
  width: 100%;
}
.merit_box img.merit_title {
  border-bottom: 1px solid gray;
  padding-bottom: 20px;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .merit_box img.merit_title {
    width: 100%;
  }
}
.merit_box p span {
  background-color: #fef06e;
}

.content_title_merit {
  font-size: 3.5rem;
  text-align: center;
  line-height: 1.4;
  font-weight: 600;
  font-family: "Noto Serif JP";
}

.content_subtitle_merit {
  text-align: center;
  font-size: 2rem;
  margin-top: 20px;
}

.area_box {
  background: #fff;
  width: 48%;
  margin: 14px 0;
  border: 1px solid #ccc;
  line-height: 1.2;
  padding: 21px;
}

.shiten_title {
  /* background-color: #051132; */
  text-align: center;
  /* padding: 5px; */
  font-weight: 600;
  color: #000;
}

.area_box a {
  color: #000;
  font-size: 1.4rem;
  text-decoration: underline;
}

@media screen and (max-width: 769px) {
  .area_box {
    width: 100%;
    margin: 14px 0;
    padding: 15px;
    height: unset;
  }
}
.online_merit_title {
  font-weight: bold;
  text-align: center;
  color: #363636;
  margin-bottom: 20px;
}
@media screen and (min-width: 769px) {
  .online_merit_title {
    font-size: 3rem;
  }
}
.online_merit_title span {
  background-color: #4d9bc1;
  color: #fff;
  padding: 0 0.1em;
}

@media screen and (min-width: 769px) {
  .online_merit img {
    display: block;
    margin: 0 auto;
  }
}
.online_merit .toggle_wrap {
  background: #efe8e8;
  color: #163251;
  text-align: center;
  padding: 5px 0 0;
  margin: 15px 0 0;
  font-size: 1.3rem;
  border: 1px solid #163251;
}
@media screen and (min-width: 769px) {
  .online_merit .toggle_wrap {
    font-size: unset;
    margin-top: 30px;
  }
}
.online_merit .toggle_wrap .toggle_contents {
  background-color: white;
  text-align: left;
  padding: 8px;
}

.ouryou_title,
.ouryou_onayami {
  width: 100%;
}

.marquee {
  margin: 0px auto 5px;
  background: #980000;
  overflow: hidden;
  display: flex;
  white-space: nowrap;
  overflow: hidden;
  gap: 1rem;
}

.marquee .marquee-inner {
  animation: marquee 20s linear infinite;
  font-size: 15px;
  letter-spacing: 0.12em;
  color: #fff;
}

@keyframes marquee {
  0% {
    translate: 0;
  }
  100% {
    translate: calc(-100% - 1rem);
  }
}
.pattern-diagonal-stripes-sm {
  background: repeating-linear-gradient(125deg, #fbeff7, #fbeff7 8px, #fff4fa 8px, #fff4fa 16px);
}

.gengaku_QA .pattern-diagonal-stripes-sm {
  background: repeating-linear-gradient(125deg, #e2f5f2, #e2f5f2 8px, #f2fbfa 8px, #f2fbfa 16px);
}

.paper {
  box-shadow: 0px 5px 11px 0px rgba(0, 0, 0, 0.1);
  background: #fffbf1; /* 紙の色を白に指定 */
  border-radius: 5px; /* 角は若干丸くする */
  padding: 20px 15px 20px 37px; /* 左に多い目に余白を取る */
  position: relative; /* 基準位置とする */
}

.paper::before {
  content: ""; /* 疑似要素に必須 */
  width: 10px; /* 穴の幅を指定(穴の幅以上あればOK) */
  height: 89%; /* 穴をあける距離を指定。紙の高さの90%に指定 */
  background-image: radial-gradient(circle, #e1e1e1 5px, transparent 5px); /* 円形のグラデーションを作成。色はbodyの背景色と同じ */
  background-repeat: repeat-y; /* Y軸方向に繰り返す */
  background-size: 10px 20px; /* 「背景の穴のサイズ(10px)」「穴のサイズ(10px)＋穴から次の穴までの距離(10px)」を指定 */
  display: inline-block; /* インラインブロック要素にする */
  position: absolute; /* 相対位置に指定 */
  left: 10px; /* 左から10pxの位置に指定 */
  top: 0; /* 上下中央に配置するため0に指定 */
  bottom: 0; /* 上下中央に配置するため0に指定 */
  margin: auto; /* 上下中央に配置するためautoを指定 */
}

.powerword_area {
  background-color: #b75959;
  padding-bottom: 10px;
}
@media screen and (min-width: 769px) {
  .powerword_area {
    padding-top: 20px;
  }
}
.powerword_area .powerword {
  margin: 20px 0;
}
.powerword_area .ope {
  background-color: white;
  padding: 10px 15px;
  border: 2px solid #bb0000;
}
@media screen and (min-width: 769px) {
  .powerword_area .ope {
    padding: 10px 60px 10px;
  }
}
.powerword_area .ope h1 {
  text-align: center;
  color: #bb0000;
  font-weight: bold;
  font-size: 1.7rem;
  margin-bottom: 10px;
}
@media screen and (min-width: 769px) {
  .powerword_area .ope h1 {
    font-size: 2.2rem;
  }
}
.powerword_area .ope .sm_only {
  font-size: 1.4rem;
  line-height: 1.6;
}
.powerword_area .ope span {
  font-weight: bold;
  color: #bb0000;
}
.powerword_area .ope .flex {
  flex-wrap: nowrap;
  align-items: center;
  margin-top: 5px;
}
.powerword_area .ope .flex img {
  width: 80px;
}
@media screen and (min-width: 769px) {
  .powerword_area .ope .flex {
    font-size: 1.7rem;
    margin-top: -10px;
  }
  .powerword_area .ope .flex img {
    width: 150px;
  }
  .powerword_area .ope .flex p {
    margin-right: 20px;
  }
}

#powerword.problem-appeal {
  background-color: #b75959;
}
#powerword.problem-appeal::after {
  background: #f8f8ea;
}

.reason_title_pc {
  width: 800px;
  display: block;
  margin: 0 auto;
}

.reason_inner img {
  margin: 10px 0;
}
@media screen and (min-width: 769px) {
  .reason_inner img {
    width: 48%;
  }
}

.reason_after .problem-appeal {
  position: relative;
  z-index: 10;
  margin-top: -88px;
  background-color: #bb0000;
}
@media screen and (max-width: 768px) {
  .reason_after .problem-appeal {
    margin-top: -30px;
  }
}
.reason_after .problem-appeal::before {
  content: "";
  display: block;
  width: 100%;
  background: #363636 url(../images/bg_diagonal.webp) repeat;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  position: relative;
  z-index: 2;
  height: 90px;
}
@media screen and (max-width: 768px) {
  .reason_after .problem-appeal::before {
    height: 40px;
  }
}
.reason_after .problem-appeal::after {
  content: "";
  display: block;
  width: 100%;
  background-color: #eaebeb;
  clip-path: polygon(0 0, 50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%);
  position: relative;
  z-index: 3;
  height: 90px;
  transform: translateY(1px);
}
@media screen and (max-width: 768px) {
  .reason_after .problem-appeal::after {
    height: 40px;
  }
}
.reason_after .problem-appeal .problem-appeal-inner {
  padding: 0 10px;
}
@media screen and (min-width: 769px) {
  .reason_after .problem-appeal .problem-appeal-inner img {
    width: 800px;
    display: block;
    margin: -15px auto;
  }
}

.point_img {
  margin: 25px 0;
}
@media screen and (min-width: 769px) {
  .point_img {
    width: 900px;
    margin: 0 auto;
    display: block;
    padding-top: 30px;
    padding-bottom: 60px;
  }
}

.slider {
  margin: 0 auto;
  max-width: 500px;
  width: 80%;
}
.slider .slide-arrow {
  bottom: 0;
  height: 0;
  margin: auto;
  position: absolute;
  top: 0;
  width: 0;
}
.slider .prev-arrow {
  border-bottom: 20px solid #eef5ff;
  border-left: 0;
  border-right: 20px solid #a00;
  border-top: 20px solid #eef5ff;
  left: -30px;
}
@media screen and (min-width: 769px) {
  .slider .prev-arrow {
    left: -45px;
  }
}
.slider .next-arrow {
  border-bottom: 20px solid #eef5ff;
  border-left: 20px solid #a00;
  border-right: 0;
  border-top: 20px solid #eef5ff;
  right: -30px;
}
@media screen and (min-width: 769px) {
  .slider .next-arrow {
    right: -45px;
  }
}
.slider button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
}

.seikyu_slider .prev-arrow {
  border-bottom: 20px solid #fff7f5;
  border-top: 20px solid #fff7f5;
}
.seikyu_slider .next-arrow {
  border-bottom: 20px solid #fff7f5;
  border-top: 20px solid #fff7f5;
}

@media screen and (min-width: 768px) {
  .slider {
    max-width: 800px;
  }
  .slider-content {
    width: 800px !important; /* 任意の幅に変更 */
  }
}
.voice_box {
  position: relative;
  padding: 30px 15px;
  margin: 2em auto;
  background: #fff;
  overflow: hidden;
}
.voice_box .voice_text {
  font-size: 1.4rem;
}
@media screen and (min-width: 769px) {
  .voice_box .voice_text {
    font-size: unset;
  }
}
.voice_box .voice_text span {
  background-color: #fef06e;
}
.voice_box .voice_text .voice_main {
  position: relative;
  font-weight: bold;
  text-indent: 1em;
  font-size: 1.6rem;
  margin: 20px 0;
  color: #ab2300;
}
@media screen and (min-width: 769px) {
  .voice_box .voice_text .voice_main {
    font-size: 2rem;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
    text-indent: unset;
    margin-bottom: 30px;
  }
}
.voice_box .voice_text .voice_main::before {
  content: "\f10d";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 0.5em;
  color: rgba(171, 35, 0, 0.26);
  font-size: 2rem;
  position: absolute;
  top: -24px;
  left: -22px;
}

.voice_icon {
  width: 120px;
  height: -moz-fit-content;
  height: fit-content;
}

.voice_pofile {
  display: flex;
  flex-flow: column;
  align-items: center;
  margin-bottom: 20px;
}
.voice_pofile span {
  background: #ab2300;
  color: white;
  transform: rotate(350deg);
  margin-bottom: -20px;
  padding: 4px 10px;
  font-weight: bold;
  line-height: 1.3;
  text-align: center;
  font-size: 1.8rem;
}
.voice_pofile p:last-child {
  text-align: center;
  line-height: 1.4;
  margin-top: 10px;
}

.voice_box:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  border-width: 0 30px 30px 0; /* This trick side-steps a webkit bug */
  border-style: solid;
  border-color: #f6f6f6 #f6f6f6 #d7ceb3 #d7ceb3;
  background: #d7ceb3; /* For Opera when also applying a border-radius */
  display: block;
  width: 0; /* Only for Firefox 3.0 damage limitation */
  /* Optional: shadow */
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), -1px 1px 1px rgba(0, 0, 0, 0.2);
}

/* 解決までの流れ */
.flow_box {
  background-color: white;
  box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1);
  display: flex;
  margin: 25px 8px;
  padding: 30px;
}

.flow_left {
  position: relative;
  width: 85px;
}

.flow_right {
  margin: 10px 20px 18px 35px;
  padding-top: 0px;
  position: relative;
}
.flow_right span {
  background: linear-gradient(transparent 77%, #ffe5ac 77%);
  font-weight: bold;
}

.flow_right_h {
  font-size: 3rem;
  font-weight: bold;
  color: #000;
}

.flow_box.seikyu .flow_left p {
  background: #c6583d;
}

.flow_left p {
  width: 80px;
  height: 80px;
  border-radius: 40px;
  background: #005896;
  color: #fff;
  font-size: 2.4rem;
  padding: 16px 0px 0px 0px;
  line-height: 1.3;
  text-align: center;
  font-weight: bold;
}

.flow_left p span {
  display: block;
  font-size: 1.8rem;
}

.flow_right .yuryo_box img {
  width: 100%;
}
.flow_right div p {
  margin: 16px 30px 16px 0px;
  line-height: 1.7;
}
.flow_right img {
  padding: 10px;
  width: 315px;
}
.flow_right p {
  text-align: left;
}
.flow_right .flex {
  flex-wrap: nowrap;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .flow_box .action_btn {
    width: 100%;
  }
  .flow_box .action_btn .box_tel,
  .flow_box .action_btn .box_mail {
    width: 50%;
  }
  .flow_box .action_btn .box_tel img,
  .flow_box .action_btn .box_mail img {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .flow_box {
    background-color: white;
    box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1);
    margin: 40px 8px;
    padding: 30px 10px;
    display: flex;
    flex-flow: column;
  }
  .flow_right p {
    text-align: center;
  }
  .flow_left {
    position: relative;
    width: 60px;
    display: block;
    margin: 0 auto;
    text-align: center;
  }
  .flow_right div p {
    margin: 0px;
    line-height: 1.7;
    text-align: left;
    width: 100%;
  }
  .flow_right {
    margin: 10px 7px 18px 7px;
    padding-top: 0px;
    position: relative;
  }
  .flow_right_h {
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 13px;
  }
  .flow_right_h small {
    display: block;
  }
  .import {
    font-weight: bolder;
  }
  .flow_left p {
    width: 60px;
    height: 60px;
    color: #fff;
    font-size: 1.9rem;
    padding: 16px 0px 0px 0px;
    line-height: 1;
    text-align: center;
    font-weight: bold;
  }
  .flow_left p span {
    display: block;
    font-size: 1.5rem;
  }
  .flow_right img {
    padding: 10px 0 0 0;
    width: 100%;
  }
  .flow_right .flex {
    flex-wrap: wrap;
    align-items: left;
  }
  .flow_right .action_btn img {
    width: 100%;
  }
}
.risk_title_pc {
  background-color: #f1d900;
  padding: 10px 0;
}
.risk_title_pc img {
  width: 800px;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .risk_back img {
    padding: 30px 0;
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}

.risk_after {
  background-color: #fff8bd;
  padding: 20px 15px 0 15px;
}
.risk_after img.pc_only {
  width: 800px;
  display: block;
  margin: 0 auto;
}

.reason_back .reason_img {
  width: 800px;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .manzoku {
    background: url(../images/manzoku_back.webp);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center;
    padding: 30px 0;
  }
  .manzoku img {
    width: 500px;
    display: block;
    margin: 0 auto;
  }
}
/*btn*/
.anim-box {
  animation: poyopoyo 2s ease-out infinite;
  opacity: 1;
}

@keyframes poyopoyo {
  0%, 40%, 60%, 80% {
    transform: scale(1);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
.pink_bk {
  background-color: #fff7f5;
}
.pink_bk .contents {
  padding: 10px 13px 20px;
}
@media screen and (min-width: 769px) {
  .pink_bk .contents {
    padding: 30px 18px;
  }
}
.pink_bk .contents_title_shortline {
  color: #c6583d;
}
.pink_bk .contents_title_shortline::before {
  background: #c6583d;
}
.pink_bk .point_area .point_box .point_text h1 {
  color: #c6583d;
}

.gengaku_area .contents_title {
  color: #ffffff;
  background-color: #005896;
}

.blue_bk {
  background-color: #edf7ff;
}
.blue_bk .contents {
  padding: 20px 10px 30px;
}
@media screen and (min-width: 769px) {
  .blue_bk .contents {
    padding: 60px 18px;
  }
}
.blue_bk .contents_title_shortline {
  color: #005896;
}
.blue_bk .contents_title_shortline::before {
  background: #005896;
}
.blue_bk .point_area .point_box .point_text h1 {
  color: #005896;
}

.tab_title {
  background: url(../images/Rectangle_back_pc.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 122%;
  height: 76px;
  padding: 13px 0 15px;
}
.tab_title img {
  width: 73%;
  display: block;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .tab_title {
    background: url(../images/Rectangle_back_pc.svg);
    background-size: 100%;
    background-repeat: no-repeat;
    max-width: 1000px;
    height: 120px;
    background-position: center bottom;
    padding: 20px 0;
    margin: 0 auto;
  }
  .tab_title img {
    width: 50%;
    display: block;
    margin: 0 auto;
  }
}

.gengaku_tab_title {
  background: url(../images/Rectangle_back_blue_pc.svg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 122%;
  height: 76px;
}
@media screen and (min-width: 769px) {
  .gengaku_tab_title {
    background-size: 100%;
    background-repeat: no-repeat;
    max-width: 1000px;
    height: 120px;
    background-position: center bottom;
    padding: 20px 0;
    margin: 0 auto;
  }
  .gengaku_tab_title img {
    width: 50%;
    display: block;
    margin: 0 auto;
  }
}

.nayami.gengaku img {
  margin-top: -10px;
}
.nayami h1 {
  font-size: 2.3rem;
  text-align: center;
  font-weight: bold;
  margin-bottom: 10px;
}
@media screen and (min-width: 769px) {
  .nayami h1 {
    font-size: 3rem;
  }
}
@media screen and (min-width: 769px) {
  .nayami {
    padding: 10px 13px;
  }
}

.jyouken.contents {
  padding: 10px 0;
}

.omakase {
  padding-top: 25px;
}
.omakase .omakase_title {
  margin-bottom: 14px;
}
@media screen and (min-width: 769px) {
  .omakase {
    padding: 10px 13px;
  }
  .omakase > img {
    width: 85%;
    display: block;
    margin: 0 auto;
  }
}
.omakase .pc_flex {
  align-items: normal;
}

.omakase_inner {
  background-color: white;
  padding: 20px 13px;
  margin-bottom: 20px;
  border: 1px solid #bb0000;
}
.omakase_inner span {
  font-weight: bold;
}
.omakase_inner img {
  height: 57px;
  width: unset;
  margin-bottom: 5px;
}
@media screen and (min-width: 769px) {
  .omakase_inner img {
    height: 75px;
    margin-bottom: 12px;
  }
}
.omakase_inner.seikyu img {
  width: 100%;
  height: unset;
}
@media screen and (min-width: 769px) {
  .omakase_inner.seikyu {
    width: 100%;
    padding: 30px 30px;
  }
  .omakase_inner.seikyu img {
    width: 80%;
    margin: 0 auto;
    display: block;
  }
}
@media screen and (min-width: 769px) {
  .omakase_inner {
    padding: 20px 30px 30px;
    width: 49%;
    margin-bottom: 15px;
  }
  .omakase_inner .pc_flex {
    flex-wrap: nowrap;
    align-items: flex-start;
  }
}

.triangle_bottom {
  position: relative;
  z-index: 10;
}

.triangle_bottom::after {
  content: "";
  display: block;
  width: 100%;
  background-color: #f6f6f6;
  /* background: #f6f6f6 url(../images/bg_diagonal.webp) repeat; */
  background-image: linear-gradient(0deg, transparent 19px, #ccc 20px), linear-gradient(90deg, transparent 19px, #ccc 20px);
  background-size: 20px 20px;
  clip-path: polygon(0 0, 50% 100%, 100% 0, 100% 100%, 50% 100%, 0 100%);
  position: relative;
  z-index: 3;
  height: 102px;
  transform: translateY(1px);
}
@media screen and (max-width: 480px) {
  .triangle_bottom::after {
    height: 50px;
  }
}

.square {
  background-image: linear-gradient(0deg, transparent 19px, #ccc 20px), linear-gradient(90deg, transparent 19px, #ccc 20px);
  background-size: 20px 20px;
}

.compare_table > img {
  margin-bottom: 15px;
}
@media screen and (min-width: 769px) {
  .compare_table > img {
    width: 600px;
    margin: 0 auto 30px;
    display: block;
  }
}
.compare_table .table-wrap {
  overflow-x: scroll;
}
@media screen and (min-width: 769px) {
  .compare_table .table-wrap {
    width: 900px;
    margin: 0 auto;
    overflow-x: unset;
  }
}
.compare_table .table {
  width: 100%;
  min-width: 600px;
  border-collapse: collapse;
}
.compare_table .table span {
  color: #a30d59;
  font-weight: bold;
}
.compare_table .table th,
.compare_table .table td {
  border: none;
  border-bottom: 2px dashed #94a3a9;
  padding: 4px 8px;
}
.compare_table .table .col-empty {
  width: 86px;
  /* 一列目の幅を100pxに設定 */
}
.compare_table .table .col-lawyer {
  font-size: 2.3rem;
  line-height: 1.4;
  background-color: #ab4126 !important;
  color: white;
}
.compare_table .table .col-lawyer,
.compare_table .table td:nth-child(2) {
  background-color: #fff7f5;
  padding: 15px 15px !important;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .compare_table .table .col-lawyer,
  .compare_table .table td:nth-child(2) {
    padding: 20px 40px !important;
  }
}
.compare_table .table .col-self {
  background-color: #f8f8f8;
  padding: 15px 15px;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .compare_table .table .col-self {
    padding: 20px 40px;
  }
}
.compare_table .table td:nth-child(3) {
  background-color: #f8f8f8;
  padding: 15px 15px;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .compare_table .table td:nth-child(3) {
    padding: 20px 40px;
  }
}
.compare_table .table th:first-child,
.compare_table .table td:first-child {
  width: 86px;
  /* 一列目の項目の幅を100pxに設定 */
  background-color: #f0f0f0;
}
@media screen and (min-width: 769px) {
  .compare_table .table th:first-child,
  .compare_table .table td:first-child {
    width: 160px;
  }
}
.compare_table .table th:nth-child(2),
.compare_table .table td:nth-child(2) {
  border-left: 3px solid #ab4126;
  border-right: 3px solid #ab4126;
}
.compare_table .table th:nth-child(2) {
  border-top: 3px solid #ab4126;
}
.compare_table .table tr:last-child td:nth-child(2) {
  border-bottom: 3px solid #ab4126;
}
.compare_table .table th:nth-child(3),
.compare_table .table td:nth-child(3) {
  border-right: 3px solid #868686;
}
.compare_table .table th:nth-child(3) {
  border-top: 3px solid #868686;
}
.compare_table .table tr:last-child td:nth-child(3) {
  border-bottom: 3px solid #868686;
}
.compare_table .table td:nth-child(2)::before {
  content: "\f058";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: 90px;
  transform: translateY(-50%);
  color: #d3b3c3;
  font-size: 92px;
  opacity: 0.3;
  z-index: -2;
}
@media screen and (min-width: 769px) {
  .compare_table .table td:nth-child(2)::before {
    left: 142px;
    font-size: 112px;
  }
}
.compare_table .table td:nth-child(3)::before {
  content: "\f00d";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: 90px;
  transform: translateY(-50%);
  color: #b7b7b7;
  font-size: 92px;
  opacity: 0.3;
  z-index: -2;
}
@media screen and (min-width: 769px) {
  .compare_table .table td:nth-child(3)::before {
    left: 142px;
    font-size: 112px;
  }
}
.compare_table.gengaku_table .table span {
  color: #007084;
  font-weight: bold;
}
.compare_table.gengaku_table .table .col-lawyer {
  background-color: #005896 !important;
}
.compare_table.gengaku_table .table th:nth-child(2),
.compare_table.gengaku_table .table td:nth-child(2) {
  border-left: 3px solid #005896;
  border-right: 3px solid #005896;
}
.compare_table.gengaku_table .table th:nth-child(2) {
  border-top: 3px solid #005896;
}
.compare_table.gengaku_table .table tr:last-child td:nth-child(2) {
  border-bottom: 3px solid #005896;
}
.compare_table.gengaku_table .table .col-lawyer,
.compare_table.gengaku_table .table td:nth-child(2) {
  background-color: #e7f3f1;
}
.compare_table.gengaku_table .table td:nth-child(2)::before {
  color: #a2beb9;
}

@media screen and (min-width: 769px) {
  .reason > img {
    width: 600px;
    display: block;
    margin: 0 auto;
  }
}
.reason_box > div {
  background: #fff9f6;
  padding: 15px 10px;
  margin-top: 20px;
  box-shadow: 0px 5px 30px 0px rgba(0, 0, 0, 0.1019607843);
}
@media screen and (min-width: 769px) {
  .reason_box > div {
    padding: 40px 40px;
    margin-top: 50px;
  }
}
.reason_box h2 {
  position: relative;
  padding: 1.5rem 0rem 0.5rem 105px;
  border-bottom: 3px solid #d0a48e;
  font-family: "Noto serif JP";
  font-weight: bold;
  font-size: 2.3rem;
  color: #bd3f00;
}
.reason_box h2 span {
  font-family: "Roboto", sans-serif;
  font-size: 84px;
  line-height: 1;
  font-weight: bold;
  position: absolute;
  bottom: -5px;
  left: 0;
  color: #dfccc4;
}
.reason_box h2 small {
  font-family: "Noto sans JP";
  font-size: 1.3rem;
  font-weight: normal;
  display: block;
  line-height: 1.4;
}
@media screen and (min-width: 769px) {
  .reason_box h2 {
    padding: 0.5rem 0rem 1.5rem 164px;
    font-size: 3.3rem;
  }
  .reason_box h2 span {
    font-size: 108px;
  }
  .reason_box h2 small {
    font-size: 2rem;
  }
}
.reason_box .reason_box_inner {
  padding: 20px 10px;
}
.reason_box .reason_box_inner img {
  margin-top: 10px;
  width: 100%;
  height: 170px;
  -o-object-fit: cover;
     object-fit: cover;
}
.reason_box .reason_box_inner p b {
  font-size: 2rem;
  padding: 0 15px;
  border-left: 3px dashed #005896;
  margin-bottom: 9px;
  display: inline-block;
  color: #166f7e;
}
.reason_box .reason_box_inner p b.seikyu {
  border-left: 3px dashed #c2729b;
  color: #91004a;
}
@media screen and (min-width: 769px) {
  .reason_box .reason_box_inner {
    display: flex;
    align-items: center;
  }
  .reason_box .reason_box_inner p {
    width: 60%;
  }
  .reason_box .reason_box_inner p.full_width {
    width: 100%;
  }
  .reason_box .reason_box_inner img {
    width: 40%;
    margin-left: 30px;
    height: 230px;
  }
}

.tabs {
  display: flex;
  flex-wrap: wrap;
}
.tabs:first-child {
  background: #f3eee9;
}
.tabs .tab_label {
  position: relative;
  z-index: 1;
  cursor: pointer;
  flex: 1;
  padding: 0px 0 25px;
  margin: 10px 3px 0;
}
.tabs .tab_label img {
  opacity: 0.4;
}
.tabs .tab_content {
  flex: 100%;
  display: none;
  overflow: hidden;
}
.tabs input[name=tab_switch] {
  display: none;
}
.tabs input:checked + .tab_label::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 20px 0 20px;
  border-color: #c6583d transparent transparent transparent;
  display: block;
  position: absolute;
  top: 78%;
  left: 44%;
  margin-left: -10px;
  transition: all 0.3s ease 0s;
}
.tabs input:checked + .tab_label02::after {
  border-color: #005896 transparent transparent transparent;
}
.tabs input:checked + .tab_label {
  position: relative;
}
.tabs input:checked + .tab_label::before {
  background: url(../images/display_icon.webp) no-repeat center top;
  background-size: contain;
  position: absolute;
  left: 0%;
  content: "";
  bottom: 86%;
  display: block;
  width: 29%;
  height: 31%;
  z-index: 1;
}
.tabs #tab01:checked ~ #tab01_content,
.tabs #tab02:checked ~ #tab02_content {
  display: block;
}
.tabs #tab01:checked + .tab_label img,
.tabs #tab02:checked + .tab_label img {
  opacity: 1;
}
.tabs .tab_content {
  position: relative;
  animation: fadeIn 1s ease;
}

.tabs_02 {
  display: flex;
  flex-wrap: wrap;
}
.tabs_02:first-child {
  background: #f3eee9;
}
.tabs_02 .tab_label {
  position: relative;
  z-index: 1;
  cursor: pointer;
  flex: 1;
  padding: 0px 0 25px;
  margin: 25px 3px 0;
}
.tabs_02 .tab_label img {
  opacity: 0.4;
}
.tabs_02 .tab_content {
  flex: 100%;
  display: none;
  overflow: hidden;
}
.tabs_02 input[name=tab_switch_02] {
  display: none;
}
.tabs_02 input:checked + .tab_label::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 20px 0 20px;
  border-color: #ab4126 transparent transparent transparent;
  display: block;
  position: absolute;
  top: 78%;
  left: 44%;
  margin-left: -10px;
  transition: all 0.3s ease 0s;
}
.tabs_02 input:checked + .tab_label02::after {
  border-color: #005896 transparent transparent transparent;
}
.tabs_02 #tab03:checked + .tab_label img,
.tabs_02 #tab04:checked + .tab_label img {
  opacity: 1;
}
.tabs_02 #tab03:checked ~ #tab03_content,
.tabs_02 #tab04:checked ~ #tab04_content {
  display: block;
}
.tabs_02 .tab_content {
  position: relative;
  animation: fadeIn 1s ease;
}

.tabs_03 {
  display: flex;
  flex-wrap: wrap;
}
.tabs_03:first-child {
  background: #f3eee9;
}
.tabs_03 .tab_label {
  position: relative;
  z-index: 1;
  cursor: pointer;
  flex: 1;
  padding: 0px 0 25px;
  margin: 25px 3px 0;
}
.tabs_03 .tab_label img {
  opacity: 0.4;
}
.tabs_03 .tab_content {
  flex: 100%;
  display: none;
  overflow: hidden;
}
.tabs_03 input[name=tab_switch_03] {
  display: none;
}
.tabs_03 input:checked + .tab_label::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 20px 0 20px;
  border-color: #c6583d transparent transparent transparent;
  display: block;
  position: absolute;
  top: 83%;
  left: 44%;
  margin-left: -10px;
  transition: all 0.3s ease 0s;
}
.tabs_03 input:checked + .tab_label02::after {
  border-color: #005896 transparent transparent transparent;
}
.tabs_03 input:checked + .tab_label {
  position: relative;
}
.tabs_03 input:checked + .tab_label::before {
  background: url(../images/display_icon.webp) no-repeat center top;
  background-size: contain;
  position: absolute;
  left: 0%;
  content: "";
  bottom: 86%;
  display: block;
  width: 29%;
  height: 31%;
  z-index: 1;
}
.tabs_03 #tab05:checked + .tab_label img,
.tabs_03 #tab06:checked + .tab_label img {
  opacity: 1;
}
.tabs_03 #tab05:checked ~ #tab05_content,
.tabs_03 #tab06:checked ~ #tab06_content {
  display: block;
}
.tabs_03 .tab_content {
  position: relative;
  animation: fadeIn 1s ease;
}

@media screen and (min-width: 768px) {
  .tabs,
  .tabs_02,
  .tabs_03 {
    width: 1000px;
    margin: 0 auto;
  }
  .tabs .tab_label,
  .tabs_02 .tab_label,
  .tabs_03 .tab_label {
    margin: 20px 3px 20px;
  }
  .tabs .tab_label img.pc_only,
  .tabs_02 .tab_label img.pc_only,
  .tabs_03 .tab_label img.pc_only {
    display: block;
    margin: 0 auto;
  }
  .tabs input:checked + .tab_label::after,
  .tabs_02 input:checked + .tab_label::after,
  .tabs_03 input:checked + .tab_label::after {
    border-width: 20px 20px 0 20px;
    top: 88%;
  }
}
/*マスキングテープ風*/
.box5-5 {
  margin: 3em auto 10px;
  background-color: #f6eeec; /*ボックス背景色*/
  padding: 2.5em 1em 1em; /*ボックス内側余白*/
  position: relative; /*配置(ここを基準に)*/
}

.box5-5 .box-title {
  background-image: repeating-linear-gradient(-45deg, #f6eeec 0, #f6eeec 3px, #fafafa 3px, #fafafa 6px);
  border-left: 2px dotted rgba(0, 0, 0, 0.1);
  border-right: 2px dotted rgba(0, 0, 0, 0.1);
  font-size: 1em;
  padding: 10px 11px;
  line-height: 1.3;
  position: absolute;
  top: -28px;
  left: -4px;
}

/*左上にずらした背景色ありタイトル*/
.box5-4 {
  margin: 16px 0 0 0;
  padding: 1em 1em 1em;
  position: relative;
  background: #c6583d;
  color: white;
}
@media screen and (min-width: 768px) {
  .box5-4 {
    width: 900px;
    margin: 40px auto 0;
  }
}
.box5-4 b {
  color: #bb0000;
}

.box5-4 .box-title {
  background-color: #c6583d; /* タイトル背景色 */
  font-size: 1em; /* タイトル文字の大きさ */
  color: #fff; /* タイトル文字色 */
  padding: 7px 12px; /*タイトルの余白*/
  line-height: 1; /*タイトルの行の高さ*/
  position: absolute; /* 配置(ここを動かす) */
  top: -10px; /*上から（0px）移動*/
  left: 20px; /*左から(0px)移動*/
}

.yakusoku {
  padding-bottom: 30px;
}
.yakusoku img {
  padding: 0 10px;
  position: relative;
  margin-top: -55px;
  z-index: 222;
}
@media screen and (min-width: 768px) {
  .yakusoku img {
    width: 1000px;
    margin: 0 auto;
    display: block;
    padding: 0 30px;
    margin-top: -80px;
  }
}

.tab_top_btn {
  background: #f3eee9;
  padding-top: 10px;
  padding: 10px 15px 0px 15px;
}
.tab_top_btn img {
  width: 100%;
  display: block;
  margin: 0px auto 0;
}
@media screen and (min-width: 768px) {
  .tab_top_btn {
    padding-top: 20px;
  }
  .tab_top_btn img {
    width: 700px;
    display: block;
    margin: 0px auto 0;
  }
}

.purun {
  animation: purun 0.8s linear 0s 1;
}
@keyframes purun {
  0% {
    transform: scale(1, 1) translate(0%, 0%);
  }
  15% {
    transform: scale(0.9, 0.9) translate(0%, 5%);
  }
  30% {
    transform: scale(1.3, 0.8) translate(0%, 10%);
  }
  50% {
    transform: scale(0.8, 1.3) translate(0%, -10%);
  }
  70% {
    transform: scale(1.1, 0.9) translate(0%, 5%);
  }
  100% {
    transform: scale(1, 1) translate(0%, 0%);
  }
}
@keyframes dokundokun {
  0% {
    transform: scale(1);
  }
  15% {
    transform: scale(1.05);
  }
  30% {
    transform: scale(1);
  }
  45% {
    transform: scale(1.05);
  }
  70% {
    transform: scale(1);
  }
}
@keyframes flash {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
}
/* アクションエリア */
@media screen and (min-width: 760px) {
  .box_action01 {
    padding: 30px 80px;
  }
  .box_action01 .action_USP {
    width: 80%;
    display: block;
    margin: 0 auto;
  }
}

.box_action {
  /* background: #fff url(../images/bg_diagonal.webp) repeat; */
  position: relative;
  margin: 0 auto;
  padding: 25px 0 20px 0;
}

.box_action_inner {
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .box_action_inner {
    width: 100%;
  }
}
.box_action_inner .box_action_01.gengaku_cv .box_tel {
  position: relative;
  z-index: 2;
}
.box_action_inner .box_action_01.gengaku_cv .box_tel img {
  position: relative;
  z-index: 3;
}
.box_action_inner .box_action_01.gengaku_cv .box_tel:before {
  background: url(../images/actiontop_leftimg.webp) no-repeat center top;
  background-size: cover;
  position: absolute;
  right: 4%;
  content: "";
  bottom: 55%;
  display: block;
  width: 47%;
  height: 136%;
  z-index: 1;
}
.box_action_inner .box_action_01 .box_tel img,
.box_action_inner .box_action_01 .box_mail img {
  width: 420px;
}
@media screen and (max-width: 768px) {
  .box_action_inner .box_action_01 .box_tel img,
  .box_action_inner .box_action_01 .box_mail img {
    width: 100%;
  }
}
.box_action_inner .box_action_01 .yuryo_box {
  margin-bottom: 20px;
  position: relative;
  z-index: 2;
}
.box_action_inner .box_action_01 .yuryo_box img {
  position: relative;
  background-color: white;
  z-index: 3;
}
.box_action_inner .box_action_01 .yuryo_box:before {
  background: url(../images/actiontop_leftimg.webp) no-repeat center top;
  background-size: cover;
  position: absolute;
  right: 0%;
  content: "";
  bottom: 100%;
  display: block;
  width: 32%;
  height: 60%;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .box_action_inner .box_action_01 .yuryo_box:before {
    bottom: 100%;
    display: block;
    width: 42%;
    height: 25%;
  }
}
@media screen and (min-width: 769px) {
  .box_action_inner .box_action_01 .box_tel:before {
    content: none;
  }
  .box_action_inner .box_action_01.gengaku_cv .box_tel:before {
    content: none;
  }
  .box_action_inner .box_action_01.gengaku_cv .box_mail {
    position: relative;
    z-index: 2;
  }
  .box_action_inner .box_action_01.gengaku_cv .box_mail img {
    position: relative;
    z-index: 3;
  }
  .box_action_inner .box_action_01.gengaku_cv .box_mail:before {
    background: url(../images/actiontop_leftimg.webp) no-repeat center top;
    background-size: cover;
    position: absolute;
    right: 4%;
    content: "";
    bottom: 75%;
    display: block;
    width: 63%;
    height: 183%;
    z-index: 1;
  }
}
.box_action_inner .lawyer_box {
  position: relative;
  padding: 15px 0;
  outline: 2px solid #ab4126;
  outline-offset: 5px;
  background: #ab4126;
  color: #fff;
  width: 545px;
  margin-bottom: 104px;
  margin-top: 20px;
  margin-left: 10px;
  border-radius: 20px;
}
@media screen and (max-width: 768px) {
  .box_action_inner .lawyer_box {
    width: 95%;
    margin: 0 auto 140px;
    border-radius: 10px;
  }
}
.box_action_inner .lawyer_box::before {
  position: absolute;
  top: calc(100% + 2px);
  right: 50px;
  transform: skew(29deg);
  height: 20px;
  width: 15px;
  background-color: white;
  border-right: 3px solid #ab4126;
  content: "";
}
@media screen and (max-width: 768px) {
  .box_action_inner .lawyer_box::before {
    right: 130px;
  }
}
.box_action_inner .lawyer_box h1 {
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
}
.box_action_inner .lawyer_box h1 span {
  color: #ffeb6d;
}
@media screen and (max-width: 768px) {
  .box_action_inner .lawyer_box h1 {
    font-size: 2rem;
    margin-bottom: 0;
  }
}
.box_action_inner .lawyer_box_gengaku {
  outline: 2px solid #005896;
  background: #005896;
}
.box_action_inner .lawyer_box_gengaku::before {
  border-right: 3px solid #005896;
}

@media screen and (min-width: 769px) {
  .chizu {
    flex-wrap: wrap;
  }
  .chizu a {
    width: 33%;
    font-size: 1.5rem;
  }
}

.office_shiten {
  border: 1px solid #ccc;
  padding: 10px;
  margin: 10px 0;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .office_shiten {
    height: 142px;
  }
}

@media screen and (min-width: 769px) {
  .tab_top_btn_arrow img {
    width: 1000px;
    display: block;
    margin: 0 auto;
  }
}

.link_area {
  padding: 20px 0;
  background-color: #c6583d;
  margin-top: -4px;
}
.link_area.seikyu {
  background: #f5e7e3 url(../images/bg_diagonal.webp) repeat;
}
.link_area.gengaku {
  background: #e1eef6 url(../images/bg_diagonal.webp) repeat;
}
.link_area .link_area_inner {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  background: #fff;
  border-radius: 6px;
  padding: 0 0 10px;
  margin: 0 20px 10px;
}
.link_area .link_area_inner > a {
  display: inline-block;
  width: 45%;
  animation: flash 1.6s linear infinite;
}
@media screen and (min-width: 769px) {
  .link_area .link_area_inner > a {
    width: 450px;
  }
}
.link_area .link_area_inner > a img {
  width: 100%;
  display: block;
  margin-top: -16px;
}
.link_area .link_area_inner_img {
  width: 80%;
  display: block;
  margin: 0 auto;
  position: relative;
  z-index: 30;
  margin-top: -65px;
  animation: dokundokun 2s ease-in-out infinite;
}
.link_area a {
  display: inline-block;
  width: 45%;
}
@media screen and (min-width: 769px) {
  .link_area a {
    width: 450px;
  }
}
.link_area a img {
  width: 100%;
  display: block;
}
.link_area img {
  width: 45%;
  display: block;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .link_area img {
    width: 450px;
    display: block;
    margin: 0 auto;
  }
}
.link_area .link_area-btn {
  display: block;
  width: 90%;
  margin: 0 auto;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .link_area .link_area-btn {
    width: 450px;
  }
}
.link_area .link_area-btn img {
  width: 100%;
  display: block;
  margin: 0 auto;
}

.fv-section {
  position: relative;
  min-height: 400px;
  width: 100%;
  max-width: 390px;
  margin: 0 auto -1px auto;
  overflow: hidden;
  padding-bottom: 160px;
}
.fv-section__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 0;
  background-image: url("../images/white_back_img.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.fv-section__border {
  position: absolute;
  bottom: -1px;
  left: 0;
  right: 0;
  z-index: 10;
  width: 100%;
  pointer-events: none;
  overflow: hidden;
}
.fv-section__border svg {
  width: 100%;
  display: block;
}
.fv-section__lawyer {
  position: absolute;
  bottom: 0;
  right: 0px;
  z-index: 5;
  width: 48%;
  max-width: 220px;
  pointer-events: none;
}
.fv-section__lawyer-img {
  width: 100%;
  height: auto;
  display: block;
}
.fv-section__lawyer-info {
  position: absolute;
  bottom: 20px;
  right: 20px;
  color: #fff;
  font-family: "Meiryo", sans-serif;
  font-size: 8px;
  line-height: 1.3;
  text-align: center;
}
.fv-section__lawyer-name {
  margin: 0 0 2px 0;
  font-weight: bold;
}
.fv-section__lawyer-org {
  margin: 0;
}
.fv-section__content {
  position: relative;
  z-index: 20;
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 30px 10px 70px 20px;
  max-width: 304px;
}

.fv__hero {
  display: flex;
  flex-direction: column;
}
.fv__hero-title-container {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  margin-bottom: 2px;
  flex-wrap: nowrap;
}
.fv__hero-title-box {
  border: 1px solid #9d4532;
  border-radius: 2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.fv__hero-title-wrapper {
  width: auto;
  max-width: 100%;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: skewX(-3deg);
  flex-shrink: 0;
}
.fv__hero-title-svg {
  width: auto;
  height: 100%;
  min-width: 180px;
}
.fv__hero-subtitle {
  font-size: 17px;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  line-height: 1.3;
  letter-spacing: 1px;
  color: #000;
  margin: 0;
  padding: 0 0 6px 0;
  white-space: nowrap;
  flex-shrink: 0;
}
.fv__hero-description {
  margin: 2px 0;
}
.fv__hero-description-text {
  font-family: "Noto Serif JP", serif;
  font-weight: 700;
  margin: 0;
  padding: 0;
  white-space: nowrap;
}
.fv__hero-description-text--large {
  font-size: 25px;
  line-height: 1.3;
  color: #000;
}
.fv__hero-description-text--small {
  font-size: 16px;
  line-height: 1.3;
  color: #000;
}
.fv__hero-description-text--accent {
  font-size: 30px;
  line-height: 1.3;
  color: #ab4126;
}
.fv__hero-cta {
  margin-top: 2px;
  position: relative;
}
.fv__hero-cta-text {
  font-size: 52px;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  line-height: 1.1;
  letter-spacing: 5px;
  color: #ab4126;
  transform: skewX(-4deg);
  margin: 0;
  padding: 0;
  position: relative;
  display: inline-block;
  white-space: nowrap;
}
.fv__hero-cta-underline {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 225px;
  height: 5px;
  background-color: #ffd700;
  transform: skewX(-4deg);
  z-index: -1;
}

.fv__badges {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 5px;
  max-width: 215px;
  margin-top: 2px;
  flex-wrap: nowrap;
}

.fv__badge-item {
  background-color: #fff2ee;
  border-radius: 32px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.22);
  display: flex;
  flex-direction: column;
  text-align: center;
  justify-content: center;
  gap: 2px;
  padding: 6px 4px;
  min-height: 56px;
  flex-wrap: nowrap;
}
.fv__badge-item:first-child {
  padding: 6px 8px;
}

.fv__badge-text-main {
  font-size: 16.5px;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.25;
  color: #7d0000;
  margin: 0;
  padding: 0;
  transform: skewX(-12deg) scaleY(0.98);
  white-space: nowrap;
}
.fv__badge-text-main--small {
  font-size: 11px;
  font-weight: 500;
  color: #0f0f0f;
}
.fv__badge-text-sub {
  font-size: 14px;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.25;
  color: #7d0000;
  margin: 0;
  padding: 0;
  transform: skewX(-12deg) scaleY(0.98);
  white-space: nowrap;
}
.fv__badge-text-sub--normal {
  color: #000;
  font-size: 12px;
}
.fv__badge-text-sub--large {
  font-size: 18px;
  line-height: 0.93;
  color: #7d0000;
}

.fv__badge-notes {
  font-size: 7px;
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.25;
  letter-spacing: 1px;
  color: #000;
  margin: 0;
  padding: 0;
  transform: skewX(-12deg) scaleY(0.98);
  white-space: nowrap;
}/*# sourceMappingURL=style.css.map */