@charset "utf-8";

body {
  -webkit-text-size-adjust: none;
}
*:first-child + html body {
  /* for IF7 */
  font-family: "メイリオ", "Meiryo";
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
  padding: 0; /*font-size:100%;*/
}
ol,
ul,
dl,
li {
  margin: 0;
  padding: 0;
  list-style: none;
}
ul {
  display: inline-block;
}
*/
/* for macIE \*/
* html ul {
  height: 1%;
}
ul {
  display: block;
}
dt,
dd {
  margin: 0;
  padding: 0;
}
img {
  border: none;
}
th {
  text-align: left;
  font-weight: normal;
}
input,
button,
textarea,
select {
  border-radius: 0;
}
header,
footer,
nav,
article,
section {
  display: block;
}
html {
  font-size: 62.5%;
}

img {
  vertical-align: top;
}

.sm_only {
  display: none !important;
}

.pc_flex {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.case-section__label {
  width: fit-content;
  border: 1px solid;
  border-radius: 19px;
  padding: 1px 15px;
  margin-bottom: 13px;
}

.case-section__label--before {
  border-color: #0e5abf;
  color: #0e5abf;
}

.case-section__label--after {
  background: #495d91;
  color: white;
  margin-top: 30px;
  border-color: #495d91;
}

.case-section__content {
  margin-bottom: 20px;
}

text p {
  font-size: 1.5rem;
}

/* クラス名のないpタグ用のスタイル */
.ap01_text > p:not([class]) {
  font-size: 1.9rem;
}

@media screen and (max-width: 480px) {
  .ap01_text > p:not([class]) {
    font-size: 1.5rem;
  }
}

/* #jirei_contents内のクラス名のないpタグ用のスタイル */
#jirei_contents p:not([class]) {
  font-size: 1.9rem;
}

@media screen and (max-width: 480px) {
  #jirei_contents p:not([class]) {
    font-size: 1.5rem;
    line-height: 2.1;
  }
}

.solution_profile_container {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 15px;
}

.solution_profile_container .solution_title {
  flex: 1;
}

.solution_profile_container .profile {
  flex-shrink: 0;
}

.case_img {
  width: 63%;
  margin-bottom: 30px;
}

.solution_title {
  font-weight: 600;
  line-height: 1.3;
  font-size: 2.9rem;
  margin: 60px 60px 0 0;
}

@media screen and (max-width: 480px) {
  .pc_only {
    display: none !important;
  }

  .sm_only {
    display: block !important;
  }

  .pc_flex {
    display: block;
  }

  .solution_profile_container {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 5px;
  }

  .solution_profile_container .solution_title {
    flex: 1;
    font-size: 1.8rem;
    margin: 30px 0;
  }

  .solution_profile_container .profile {
    flex-shrink: 0;
  }
}

body {
  color: rgb(24, 24, 24);
  background: #fcfcfc;
  line-height: 2;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
    Meiryo, メイリオ, "Times New Roman", "YuMincho", "Hiragino Mincho ProN",
    "Yu Mincho", "MS PMincho", serif;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 480px) {
  body {
    line-height: 2.1;
    font-size: 1.8rem;
    font-weight: 400;
  }
}
.pagetop {
  cursor: pointer;
  position: fixed;
  right: 15px;
  bottom: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  transition: 0.3s;
  color: #00a6c4;
  border: solid 2px #00a6c4;
  background: #fff;
  z-index: 1000;

  /*   デフォルトは非表示 */
  opacity: 0;
}
.pagetop:hover {
  box-shadow: 0 0 10px #00a6c4;
}

.flex {
  display: flex;
  flex-wrap: wrap;
}

.flex-column {
  display: flex;
  flex-flow: column;
}
.content {
  width: 1000px;
  margin: auto;
  padding: 75px 0;
}
@media screen and (max-width: 480px) {
  .content {
    width: 100%;
    margin: 0px auto 0px;
    padding: 0 8px 40px;
  }
}

.backcolor00 {
  background-color: #fff;
}

.backcolor1 {
  background: linear-gradient(
    90deg,
    #fff7f8 0%,
    #fff7f8 50%,
    #f3f7f7 50%,
    #f3f7f7 100%
  );
}
.backcolor2 {
  background-color: #f5faff;
}
.backcolor3 {
  background: #f8f3f8 url(../images/bg_diagonal.webp) repeat;
  position: relative;
}

.backcolor4 {
  background-color: #f3f7f7;
}

.backcolor5 {
  background-color: #faebed;
}

@media screen and (max-width: 480px) {
  .backcolor1 {
    background: linear-gradient(
      180deg,
      #fff7f8 0%,
      #fff7f8 50%,
      #f3f7f7 50%,
      #f3f7f7 100%
    );
  }
  .backcolor1 .content {
    padding-bottom: 10px;
  }
}
.bg-traiangle {
  background: #f3f7f7;
  position: relative;
  margin: 0 0 60px;
}

.bg-traiangle::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 80px 49vw 0 49vw;
  border-color: #f3f7f7 transparent transparent transparent;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
}

.bg-traiangle02 {
  background: #faebed;
  position: relative;
  margin: 0 0 60px;
}

.bg-traiangle02::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 80px 49vw 0 49vw;
  border-color: #faebed transparent transparent transparent;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
}

.center-title {
  width: 75%;
  display: block;
  margin: 40px auto;
}

header {
  width: 1100px;
  margin: 0 auto;
}

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

/* ヘッダ＆ファーストビュー */
.header_logo {
  width: 1160px;
  margin: auto;
  padding: 10px 10px 0;
  text-align: left;
}

.header_back {
  background: url(../images/main_back.png) center top / cover no-repeat
    transparent;
  height: 900px;
  position: relative;
}

.header_inner {
  width: 890px;
  height: 825px;
  margin: 0px auto;
  padding: 84px 0px 0px;
}

.header_inner img {
  width: 100%;
}

.sm_inner {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .header_inner img {
    width: 1000px;
    display: block;
    margin: 20px 0 0 -50px;
  }

  .inner_img {
    position: absolute;
    top: 260px;
  }

  .header_top {
    position: absolute;
    top: -20px;
    right: 0px;
  }

  .header_top img {
    width: 100vw;
    height: 215px;
  }

  .header_top_text {
    position: absolute;
    top: 0px;
  }
}

@media screen and (max-width: 480px) {
  .USP {
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .bg-traiangle::after,
  .bg-traiangle02::after {
    border-width: 54px 49vw 0 49vw;
  }
  header {
    width: 100%;
    margin: 0 auto;
    background: #ffffff;
  }

  header img {
    width: 70%;
    padding: 10px;
    display: block;
    margin: 0 auto;
  }
  .header_inner {
    width: 100%;
    padding: 0;
  }
}
.link_area {
  /* margin-top: -98px; */
  /* padding-top: 125px; */
}

.link_area h2 {
  position: relative;
  padding: 1.5rem 2rem;
  border-radius: 10px;
  background: #495d91;
  text-align: center;
  color: white;
  line-height: 1.7;
  margin-bottom: 25px;
}

.link_area h2 span {
  font-weight: 600;
  font-size: 2.6rem;
  color: #fff602;
}

.link_area h2:before {
  position: absolute;
  bottom: -14px;
  left: 47%;
  width: 0;
  height: 0;
  content: "";
  border-width: 20px 30px 0 30px;
  border-style: solid;
  border-color: #495d91 transparent transparent transparent;
}

@media screen and (max-width: 480px) {
  .link_area h2 {
    margin-top: 30px;
    font-size: 1.6rem;
    padding: 15px 0;
    margin-bottom: 20px;
  }

  .link_area h2 span {
    font-size: 2.3rem;
    display: block;
    line-height: 1.5;
    padding: 10px 0;
  }

  .link_area h2:before {
    left: 40%;
  }
}

.page_btn img {
  width: 440px;
  transition: all 0.3s ease;
}

.page_btn img:hover {
  -webkit-transform: translate3d(0, 6px, 0);
  transform: translate3d(0, 6px, 0);
  box-shadow: none;
  position: relative;
}

.page_btn {
  justify-content: space-between;
}

.page_btn02 {
  margin-top: 30px;
  padding-bottom: 70px;
}

.page_btn02 img {
  width: 440px;
  margin: 0 auto;
  display: block;
  transition: all 0.3s ease;
}

@media screen and (max-width: 480px) {
  .page_btn img {
    width: 95%;
    margin: 0 auto;
    transition: all 0.3s ease;
    padding: 15px 0;
    display: block;
  }

  .link_area {
    margin: 0;
    padding: 0;
  }
  .page_btn02 {
    padding-bottom: 30px;
    margin-top: 0;
  }
}

/* お悩み */
#nayami .contents_title {
  color: rgb(77, 77, 77);
  background-color: unset;
  font-weight: 600;
  padding: 75px 0;
}

#nayami .contents_title::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 50px;
  background-image: url(../images/nayami_icon.png);
  background-size: contain;
  vertical-align: middle;
  background-repeat: no-repeat;
  margin-bottom: 10px;
}
.nayami_title {
  width: 515px;
  display: block;
  margin: 0 auto;
  margin-bottom: 17px;
  margin-top: 14px;
}

.nayami_back {
  overflow: hidden;
  position: relative;
  background: #e7e7e7;
}
.nayami_back .contents {
  margin-top: 50px;
  margin-bottom: -17px;
}
.bg_arrow {
  width: 100%;
  margin-bottom: -90px;
  position: relative;
  z-index: 2;
}

.onaymi_area {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}

.onaymai_inner {
  background: url(../images/onayami_action_inner_pc.png) center top / cover
    no-repeat transparent;
  width: 100vw;
  height: 800px;
  background-position-y: 30%;
}

.onayami_action {
  width: 1140px;
  margin: 0 auto;
  display: block;
}

@media screen and (max-width: 480px) {
  .onayami_action {
    width: 100%;
  }
}

section#nayami > div {
  width: 48%;
}

.onayami_box {
  width: 45%;
  margin: 10px auto;
  padding: 10px;
}
.onayami_box img {
  width: 100%;
}
#nayami .flex {
  justify-content: space-around;
  flex-wrap: wrap;
}
@media screen and (max-width: 480px) {
  #nayami .content {
    padding-bottom: 0;
    margin-top: -20px;
  }
  #nayami .contents_title {
    padding: 40px 0;
    margin: 0;
  }
  .onayami_box {
    margin-bottom: 12px;
    padding: 3px;
  }
  .onayami_box img {
    width: 100%;
    display: block;
    margin: 0 auto 10px;
  }
  #nayami .flex {
    margin-top: 0px;
  }

  .nayami_title {
    width: 100%;

    padding: 30px 0 0;
  }

  .nayami_back .contents {
    margin-top: unset;
    margin-bottom: unset;
  }

  section#nayami > div {
    width: 100%;
  }
}

.naymai_inner img {
  width: 100%;
  margin: 0;
  padding: 0;
}

#nayami .pc_inner {
  background: url(../images/onayami_pc_inner.png) center top / cover no-repeat
    transparent;
  padding: 70px;
}

#nayami .pc_inner img {
  width: 1000px;
  margin: 0 auto;
  display: block;
}

/* お悩みセクションのスマホ用画像専用スタイル */
.nayami_img_container {
  width: 100%;
  padding: 0;
  margin: 0;
}

.nayami_img {
  width: 100% !important;
  height: auto;
  display: block;
  margin: 0;
  padding: 0;
}

.tel {
  padding: 0 10px;
}
.mail {
  padding: 0px 10px;
}
.tel img,
.mail img {
  width: 480px;
}

.mail img {
  transition: all 0.3s ease;
}

.mail img:hover {
  -webkit-transform: translate3d(0, 6px, 0);
  transform: translate3d(0, 6px, 0);
  box-shadow: none;
  position: relative;
}

.CVtop {
  width: 90%;
  margin: 0 auto;
  display: block;
}

.CV_content {
  padding: 100px 0;
  width: 1100px !important;
}

.CV_content .flex {
  margin-top: -30px;
}
@media screen and (max-width: 480px) {
  .CV_content {
    padding: 50px 0;
    width: 100% !important;
  }

  .CVtop {
    width: 95%;
    margin: 0 auto;
    display: block;
  }

  .tel img,
  .mail img {
    width: 100%;
    margin-top: 10px;
  }
}

.jyogai {
  color: #f00a0a;
  font-weight: bolder;
  text-align: center;
  padding: 10px 0 0;
}

.f_ex_img img {
  display: block;
  margin: 0 auto;
  width: 95%;
}

.f_ex_box {
  background: #f7f7f7;
  width: 48%;
  margin: 10px;
  border: solid 1px #d6d6d6;
}

#shippai a img {
  width: 400px;
  margin: 40px 0;
}

.contents_title {
  background: #42578e;
  color: #ffffff;
  width: 100%;
  text-align: center;
  font-weight: 600;
  font-size: 3.2rem;
  line-height: 1.4;
  padding: 18px;
}

.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: #aeaeae;
  margin: -40px -50px;
}
@media screen and (max-width: 480px) {
  .contents_title {
    width: 100%;
    font-size: 2.2rem;
    line-height: 1.4;
    padding: 18px 4px;
    font-weight: 600;
    margin-bottom: 0px;
    letter-spacing: 1.2px;
    margin: 40px 0;
  }

  .contents_subtitle {
    font-size: 1.6rem;
    position: relative;
    display: block;
    /* text-align: left; */
    margin: 0px 10px 20px 10px;
  }

  .contents_subtitle::before {
    font-size: 22px;
    margin: -42px -9px;
  }
}

.choose_img {
  padding: 4px 8px;
  border: 1px solid #e1e1e1;
  margin: 8px;
}

.choose_img img {
  vertical-align: bottom;
  width: 442px;
  margin: 10px;
}

/* よくある質問〜〜折りたたみ式 */

.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 rgb(0 0 0 / 10%);
  border: 1px solid #80808000;
  background: white;
  border-radius: 5px;
  margin-bottom: 25px;
}

.title {
  position: relative;
  cursor: pointer;
  font-weight: 600;

  padding: 3% 3% 3% 85px;
  transition: all 0.5s ease;
}

.title::before {
  position: absolute;
  display: block;
  font-family: "Font Awesome 5 Free";
  content: "\f055";
  top: 20px;
  left: 30px;
  font-size: 35px;
  color: rgb(6, 107, 178);
  transition: all 0.3s ease-in-out;
  font-weight: 900;
}

.title.close::before {
  content: "\f068";
}

.accordion-area .box {
  opacity: unset;
  display: none;
  background: #e4eff4;
  margin: 0 3% 3% 3%;
  padding: 2%;
}

.accordion-area li:first-of-type .box {
  display: block;
}

.accordion-area li:first-of-type .title::before {
  content: "\f055" !important;
  position: absolute;
  display: block;
  font-family: "Font Awesome 5 Free";
  top: 20px;
  left: 30px;
  font-size: 35px;
  color: rgb(6, 107, 178);
  transition: all 0.3s ease-in-out;
  font-weight: 900;
}

.accordion-area li:first-of-type .title.close::before {
  content: "\f068" !important;
}

@media screen and (max-width: 480px) {
  .accordion-area {
    margin: 30px auto;
  }

  .title {
    position: relative;
    cursor: pointer;
    font-weight: 600;
    padding: 3% 3% 3% 60px;
    transition: all 0.5s ease;
  }

  .title::before {
    position: absolute;
    display: block;
    font-family: "Font Awesome 5 Free";
    content: "\f055";
    top: 50%;
    left: 15px;
    transform: translateY(-50%);
    font-size: 24px;
    color: rgb(6, 107, 178);
    transition: all 0.3s ease-in-out;
    font-weight: 900;
  }

  .title.close::before {
    content: "\f068";
  }

  .accordion-area li:first-of-type .title::before {
    content: "\f055" !important;
    position: absolute;
    display: block;
    font-family: "Font Awesome 5 Free";
    top: 50%;
    left: 15px;
    transform: translateY(-50%);
    font-size: 24px;
    color: rgb(6, 107, 178);
    transition: all 0.3s ease-in-out;
    font-weight: 900;
  }

  .accordion-area li:first-of-type .title.close::before {
    content: "\f068" !important;
  }
}

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

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

.flow_right {
  margin: 10px 20px 18px 35px;
  padding-top: 0px;
  position: relative;
}
.flow_right_h {
  font-size: 3rem;
  font-weight: 600;

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

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

.flow_right div p {
  margin: 16px 30px 16px 0px;
  line-height: 1.7;
}
.flow_right img {
  padding: 10px;
  width: 315px;
}

.flow_right .flex {
  flex-wrap: nowrap;
  align-items: center;
}

.flow_right p {
  text-align: left;
}

.flow_left img {
}

@media screen and (max-width: 480px) {
  .flow_box {
    background-color: white;
    box-shadow: 0px 5px 30px 0px rgb(0 0 0 / 10%);
    margin: 30px 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: 2;
    text-align: left;
    font-size: 1.5rem;
  }

  .flow_right {
    margin: 10px 7px 18px 7px;
    padding-top: 0px;
    position: relative;
  }
  .flow_right_h {
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
    margin-bottom: 13px;
  }
  .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: 600;
  }

  .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;
  }
}

/* 費用について */
.cost_box {
  margin: 80px 0;
}
.cost_img {
  display: block;
  margin: 0 auto 45px;
}

.cost_table table {
  border: 1px solid #dadada;
  margin-top: 10px;
}
.cost_table table,
.cost_table table tr,
.cost_table table th,
.cost_table table td {
  display: grid;
}
.cost_table table th {
  border-bottom: 1px solid #dadada;
  background: #f3f3f3;
  text-align: left;
  font-weight: 600;
}
.cost_table table tr td {
  border-bottom: 1px solid #dadada;
}
.red {
  font-weight: 600;
  display: contents;
  color: #bf4d4d;
}

.blue {
  font-weight: 600;
  display: contents;
  color: #1f56b4;
}
.cost_table table tr td p {
  margin-bottom: 8px;
}
.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;
  text-align: left;
}

.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_asterisk {
  font-size: 1.8rem;
}

.cost_table h1 {
  font-size: 2.8rem;
  font-weight: 600;
}
.cost_table h1 span {
  color: #ff822d;
  font-size: 3.2rem;
}

@media screen and (max-width: 480px) {
  .cost_box {
    margin: 40px 0;
  }
  .cost_asterisk {
    font-size: 1.4rem;
    margin-left: 20px;
  }

  .cost_asterisk li {
    margin-left: 0;
  }

  .cost_box img {
    width: 70%;
    margin: 0 auto 30px;
  }
}

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

.office_table {
  padding: 8px;
  margin-top: 8px;
}

.office_table table {
  border: 1px solid #dadada;
  margin-top: 12px;
}
.office_table table,
.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: 600;
}
.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: 600;

  padding: 12px;
}

.office_subtable {
  padding: 8px;
  margin-top: 0;
}

.office_subtable p.txt {
  color: #cab795;
  font-weight: 600;

  font-size: 24px;
  line-height: 1.4;
  margin-top: 40px;
  border-bottom: 2px solid #cab795;
}

.office_subtable table.txt {
  width: 70%;
}

.office_subtable table.pic {
  width: 20%;
}

.office_subtable table td.s-text {
  font-size: 13px;
}

.office_subtable table {
  border: none;
  margin-top: 0px;
}

.office_subtable table,
.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 span {
}
.office_subtable p {
  margin-bottom: 12px;
}
/*office*/
.office_subtable .flex-wrap {
  display: flex;
  flex-wrap: wrap;
}
.chizu_box {
  border: 1px solid #ccc;
  padding: 8px;
  margin: 4px 4px 14px 4px;
  width: 315px;
}
.chizu_title {
  font-weight: 600;

  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: 480px) {
  .office_box img {
    vertical-align: bottom;
    width: 100%;
  }

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

  .office_subtable {
    padding: 8px;
    margin-top: 14px;
    font-size: 1.4rem;
  }

  .office_subtable table {
    border: none;
    margin-top: 0px;
  }
  .office_subtable table,
  .office_subtable table tr,
  .office_subtable table th,
  .office_subtable table td {
    display: flex;
  }
  .office_subtable table th {
    border-bottom: 1px solid #ffffff;
    background: #fff;
    text-align: left;
    font-weight: normal;
    width: 96px;
    white-space: nowrap;
  }
  .office_subtable table tr td {
    border-bottom: 1px solid #ffffff;
    display: grid;
    width: 100%;
  }

  .office_subtable table tr td.smalla {
    width: 16px;
  }

  .office_subtable table th,
  .office_subtable table td {
    padding: 4px;
  }

  .office_subtable p span {
    font-size: 1.3rem;
  }
  .office_subtable p {
    margin-bottom: 12px;
    margin: 0px;
  }

  /*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: 600;
    font-size: 14px;
  }
  .chizu_text {
    font-size: 14px;
  }
  .jusyo {
    display: none;
  }
  .chizu_btn {
    text-align: center;
    font-size: 14px;
  }
}
/* フッター */
footer {
  background-color: #ccc;
  padding: 50px 30px 50px;
  text-align: center;
  font-size: 1.6rem;
}

@media screen and (max-width: 480px) {
  footer {
    padding: 30px 30px 140px;
    font-size: 1.4rem;
  }

  .sub_footer footer {
    padding: 30px 30px 30px;
  }
}
.privacy {
  text-decoration: underline;
}

.privacy {
  padding: 10px;
}

.not_box {
  width: 90%;
  margin: 110px auto;
}

.not_box ol {
  margin-top: 20px;
  margin-left: 20px;
  font-size: 15px;
}
.not_box ol li {
  list-style-type: decimal;
}

#privacy {
  width: 100%;
  font-size: 1.7rem;
}

.regular {
  padding: 30px 0;
  border-bottom: 1px gray solid;
}
.word {
  margin-bottom: 30px;
}
.word_header_titleh2 {
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  margin-top: 30px;
}
.word p {
  line-height: 1.5;
}
.word_header span {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  width: 26px;
  height: 26px;
  margin-right: 10px;
  border-radius: 3px;
  background: #08104e;
  color: #fff;
  font-size: 18px;
  font-weight: 600;
}

.word_header {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px dotted #ccc;
}

ol {
  position: relative;
  margin: 0;
  padding: 0;
}
ol li {
  list-style: none;
  list-style-position: outside;
  margin: 0;
  padding-left: 3.25em;
}
ol li span {
  position: absolute;
  left: 33px;
  margin: 0;
}

.inner {
  max-width: 1050px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 1;
}

.h_small {
  margin: 15px 0 10px;
}

.inner h2 {
  text-align: center;
  font-size: 2.5rem;
}

@media screen and (max-width: 480px) {
  #privacy {
    width: 90%;
    font-size: 1.4rem;
  }
  .inner h2 {
    font-size: 2rem;
    padding: 10px 0;
  }
}

/* 質上げ施策 */
.info {
  background: #f8eaea;
  margin: 10px auto 50px;
  padding: 15px 10%;
  text-align: left;
  font-size: 1.7rem;
  width: 92%;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(139, 16, 0, 0.1);
}

/* exclude_text.php用のスタイル */
.info h4 {
  font-size: 2rem;
  margin: 25px 0 15px 0;
  padding: 5px 10px;
  border-radius: 4px;
  font-weight: 600;
  position: relative;
  background: #ffffff;
}

.info .aka {
  color: #a62c52;
  border-left: 5px solid #a62c52;
}

.info .ao {
  color: rgb(6 107 178);
  border-left: 5px solid rgb(6 107 178);
}

.info h4:first-of-type {
  margin-top: 20px;
}

.info .asterisk {
  margin: 5px 0 19px 0;
  padding-left: 25px;
}

@media screen and (max-width: 480px) {
  .info .asterisk {
    margin: 5px 0;
  }
}

.info .asterisk li {
  position: relative;
  line-height: 1.5;
}

.info .asterisk li:before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f00d";
  font-size: 18px;
  color: #d37666;
  margin: -2px -28px;
  top: 3px;
}
.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: 600;
}

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

.caution_bottom {
  margin-top: 15px;
  line-height: 1.1;
  color: #ae1010;
  text-align: center;
  font-size: 1.8rem;
  margin-bottom: 10px;
}

ul.asterisk {
  margin-left: 100px;
  /* width: 900px; */
  /* margin: auto; */
  flex-wrap: wrap;
  justify-content: space-evenly;
}

ul.asterisk li {
  list-style-type: none;
  margin-bottom: 8px;
}

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

.info span {
  background: linear-gradient(transparent 78%, #ffc8c8 60%);
  font-weight: 600;
}

.titleinsub {
  font-size: 17px;
  text-align: center;
  background: white;
  margin-top: 20px;
  line-height: 1.3;
  padding: 10px 5px;
}

.titleinsub ul {
  width: fit-content;
  margin: 0 auto;
}

.titleinsub li {
  padding: 5px 0;
  padding-left: 20px;
  font-weight: bold;
  color: #ff6f00;
  text-align: left;
  font-size: 1.8rem;
}
.titleinsub li::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f058";
  font-size: 21px;
  margin: 0px -31px;
  color: #ffb47a;
}

.titleinsub b {
  /* color: #cc0200; */
}

@media screen and (max-width: 480px) {
  .info {
    padding: 15px 10px;
    font-size: 1.5rem !important;
    border: 2px solid #bd271a;
  }

  .info h3 {
    font-size: 1.5rem;
  }

  .info h4 {
    font-size: 1.6rem;
    margin: 15px 0 10px 0;
  }

  .info .asterisk li {
    padding: 5px 8px;
    font-size: 1.4rem;
  }

  .info .asterisk li:hover {
    transform: none;
  }

  ul.asterisk {
    margin-left: 28px;
    margin: 5px 0 5px 0;
  }

  ul.asterisk li {
    margin: 0;
    line-height: 1.5;
    padding: 5px 0;
  }

  ul.asterisk li:before {
    margin: -4px -23px;
  }

  .titleinsub {
    text-align: center;
    background: white;
    margin-top: 10px;
    line-height: 1.5;
    padding: 5px;
    font-size: 15px;
  }

  .titleinsub li {
    padding: 5px 0;
    padding-left: 10px;
    font-weight: bold;
    color: #ff6f00;
    font-size: 15px;
    letter-spacing: 0.01em;
    text-align: center;
  }

  .titleinsub li::before {
    position: absolute;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f058";
    font-size: 15px;
    margin: 1px -20px;
    color: #ffb47a;
  }

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

  .caution_bottom {
    font-size: 1.4rem;
    margin-top: 10px;
    line-height: 1.4;
    color: #ae1010;
    margin-bottom: 0px;
  }
}

.merit_back {
}
.pat_02 {
  padding: 40px 40px 60px;
  background: #fffbf9;
  margin-bottom: 80px;
  border: 6px solid #f8ad00;
  border-radius: 15px;
}

.pat_02 .pc_flex {
  align-items: flex-start;
}

/* .pat_02 .pat_02_content {
  font-size: 1.8rem;
} */

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

.pat_02 p {
  font-size: 1.9rem;
}

@media screen and (max-width: 480px) {
  .pat_02 p {
    font-size: 1.5rem;
    line-height: 2;
  }
}

.pat_img {
  width: 45%;
  margin-left: 39px;
}

.shiho {
  background: #ebece9;
  padding: 30px;
}

.shiho h1 {
  color: #0c6520;
}

.shiho img,
.bengo img {
  width: 130px;
}

.shiho .pc_flex,
.bengo .pc_flex {
  width: 600px;
  margin: 0 auto 20px;
}

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

.bengo h1 {
  color: #bf5637;
}

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

.bengo ul li {
  background-color: #fff;
  padding: 10px 10px 10px 80px;
  margin-bottom: 10px;
  font-weight: 600;
  color: #282828;
  letter-spacing: 0.06em;
  position: relative;
}
.bengo ul li:before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f058";
  font-size: 34px;
  color: #bf5637;
  margin: -7px -52px;
}
.pat_02 ul {
  margin: 0;
}
.point_num {
  width: 24%;
  margin: 0 auto;
  display: block;
  margin-bottom: -63px;
}

.merit_num {
  text-align: center;
  color: #e27101;
  font-size: 4.5rem;
  font-weight: 600;
}
.pat_02_title {
  color: #1f56b4;
  font-weight: 600;
  /* 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.5rem;
  margin-bottom: 40px;
  position: relative;
  line-height: 1.4;
}
@media screen and (max-width: 480px) {
  .pat_02 {
    padding: 20px 20px;
    margin-bottom: 50px;
    border: 3px solid #f8ad00;
    border-radius: 20px;
  }

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

  .pat_02 h1 {
    font-size: 2rem;
  }

  .pat_img {
    width: 100%;
    margin: 20px 0 0;
  }

  .pat_02 ul {
    margin: 20px 0;
  }

  .pat_img_sm2 {
    height: 200px !important;
  }
  .point_num {
    width: 35%;
    margin: 0 auto;
    display: block;
    /* margin-top: -50px; */
    margin-bottom: -30px;
  }

  .merit_num {
    text-align: center;
    font-size: 2.5rem;
    font-weight: 600;
  }
  .pat_02_title {
    font-size: 2.5rem;
    text-align: center;
    margin-bottom: 15px;
  }

  .shiho {
    padding: 10px;
  }

  .bengo {
    padding: 10px;
    margin-top: 70px;
  }

  .bengo h1 {
  }

  .shiho .pc_flex,
  .bengo .pc_flex {
    width: 100%;
    margin: 0 auto 15px;
    display: flex;
    flex-flow: column;
  }

  .shiho img,
  .bengo img {
    width: 110px;
    margin-top: -60px;
    margin-bottom: 20px;
  }

  .bengo ul {
    margin: 20px 0;
  }

  .bengo ul li {
    background-color: #fff;
    padding: 8px 5px 8px 50px;
    margin-bottom: 10px;
    font-weight: 600;
    color: #282828;
    letter-spacing: 0.06em;
    position: relative;
  }

  .bengo ul li:before {
    position: absolute;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f058";
    font-size: 26px;
    color: #bf5637;
    margin: -7px -39px;
  }
}

.chart img {
  width: 100%;
}

.title_img img {
  width: 70%;
  display: block;
  margin: 0 auto;
  margin-bottom: 40px;
}
.title_img1 img {
  width: 60%;
  display: block;
  margin: 0 auto;
  margin-bottom: 40px;
}
.title_img2 img {
  width: 50%;
  display: block;
  margin: 0 auto;
  margin-bottom: 40px;
}

.title_img3 img {
  width: 40%;
  display: block;
  padding: 40px 0;
  margin: 0px auto;
}
.reason_top {
  background: url(../images/reason_top_back.png) center top / cover no-repeat
    transparent;
  padding: 30px 0 80px;
}

@media screen and (max-width: 480px) {
  .title_img img {
    width: 50%;
    display: block;
    padding: 40px 0;
    margin: 0px auto;
  }

  .title_img2 img {
    width: 90%;
    display: block;
    padding: 40px 0;
    margin: 0 auto;
  }

  .title_img2_ img {
    width: 70%;
    display: block;
    padding: 30px 0;
    margin: 0 auto;
  }

  .title_img1 img {
    width: 90%;
    display: block;
    padding: 40px 0;
    margin: 0px auto;
  }
  .title_img3 img {
    width: 70% !important;
    display: block;
    padding: 40px 0;
    margin: 0px auto;
  }
}

.reason_top_inner {
  width: 900px;
  margin: 0px auto 0;
}

.reason_top_inner img {
  width: 90%;
  display: block;
  margin: 0px auto 0;
}
@media screen and (max-width: 480px) {
  .reason_top {
    background: unset;
    padding: 0;
  }

  .reason_top img {
    width: 100%;
  }
}
/* ==================== */
.display-none,
.pc-none {
  display: none;
}

.sec-card {
  background-color: #fff;
  padding: 1.5rem;
  border-radius: 10px;
}

.sec-card + .sec-card {
  margin-top: 3rem;
}

.second-heading {
  font-size: 1.875rem;
  color: #f8ad00;
  font-weight: 600;
  padding: 0.75rem 0;
}

.red .second-heading,
.blue .second-heading {
  color: #f8ad00;
}

.card-item-right.flex {
  flex-direction: column;
  width: calc(100% - 464px);
}

.card-img-left {
  margin-right: 16px;
}

.card-img-right {
  margin-left: 16px;
}

.reason .case-num,
.top-strength .case-num {
  max-width: 6em;
  text-align: center;
  padding: 0.5em;
}

.reason .card-img {
  width: 448px;
  height: 336px;
  background-color: #eee;
}

.reason .card-img img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.sec-point-wrap {
  position: relative;
}

.sec-point-bg {
  position: absolute;
  top: -35px;
  left: 0;
  right: 0;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 70px;
  height: 70px;
  background-color: #fff;
  border-radius: 50%;
}

.sec-point-box {
  font-weight: 600;
  text-align: center;
  padding: 42px 20px 25px;
  font-size: 2.6rem;
  border-radius: 10px;
  line-height: 1.5;
  margin-top: 7.75rem;
}

.pink .sec-point-box {
  background-color: #eff9ff;
  border: 2px solid #f8ad00;
}

.pink .sec-point-bg {
  border: 2px solid #f8ad00;
}

.sec-point-bg::before {
  position: absolute;
  display: inline-block;
  text-align: center;
  content: "＼check／";
  font-size: 1.125rem;
  font-weight: 600;
  width: 8em;
  top: -24px;
  left: -11px;
}

.pink-txt {
  color: #f8ad00;
}

.pink .sec-point-bg::before {
  color: #f8ad00;
}

.green .sec-point-bg::before {
  color: #00b8bf;
}

.green .sec-point-box {
  background-color: #f3f7f7;
  border: 2px solid #00b8bf;
}

.green .sec-point-bg {
  border: 2px solid #00b8bf;
}

.u-margin {
  margin-top: 5rem;
}

.u-margin-bottom {
  margin-bottom: 5rem;
}

.sec .position {
  position: relative;
}

.table-title {
  position: absolute;
  top: -144px;
  left: 0;
}

.special-table {
  font-weight: 400;
  border-spacing: 0;
  border-collapse: separate;
}

.special-table .table-heading {
  border-radius: 10px 0 0 0;
}

.special-table .table-empty {
  height: 3rem;
}

.special-table .table-heading-a {
  font-size: 2.5rem;
  text-align: center;
  padding: 1em 1em;
  line-height: 2.5625rem;
  background-color: #dfdfdf;
  border-left: 2px solid #333;
  border-top: 2px solid #333;
}

.special-table .table-heading-b {
  font-size: 3rem;
  color: #fff;
  padding: 1.5em 1em;
  background-color: #009af8;
  border: 5px solid #009af8;
  border-radius: 10px 10px 0 0;
  text-align: center;
  font-weight: 600;
}

.special-table .table-lawyer {
  position: absolute;
  bottom: -5px;
  right: -5px;
}

.special-table .table-item {
  background-color: #eee;
  padding: 4rem 0;
  width: 10em;
  text-align: center;
  border-left: 2px solid #333;
  border-top: 2px dashed #94a3a9;
}

.special-table .table-item.first {
  border-radius: 10px 0 0 0;
  border-top: 2px solid #333;
}

.special-table .table-item.last {
  border-radius: 0 0 0 10px;
  border-bottom: 2px solid #333;
}

.special-table .table-a,
.special-table .table-b {
  border-top: 2px dashed #94a3a9;
  padding: 2.5rem 1rem;
  width: calc(50% - 5em);
}

.special-table .table-a.first,
.special-table .table-b.first {
  border-top: none;
}

.special-table .table-a.last,
.special-table .table-b.last {
  border-bottom: 2px solid #333;
}

.special-table .table-a.first {
  position: relative;
}

.special-table .table-a.first::before {
  content: "";
  display: block;
  width: 2px;
  height: 2px;
  background-color: #333;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 0 0 10px 0;
}

.special-table .table-b {
  background-color: #eff9ff;
  border-left: 5px solid #009af8;
  border-right: 5px solid #009af8;
}

.special-table .table-b.last {
  border-radius: 0 0 10px 0;
  border-bottom: 5px solid #009af8;
}

.red-txt {
  color: #f8ad00;
  font-weight: 600;
}
.blue-txt {
  color: #425ff2;
  font-weight: 600;
}

@media screen and (max-width: 480px) {
  .pc-none {
    display: block;
  }
  .second-heading {
    font-size: 1.25em;
  }

  .sec-card {
    position: relative;
    padding: 1em 1em 2em;
  }

  .sec-card + .sec-card {
    margin-top: 1rem;
  }

  .card-img-right {
    margin-left: 0;
  }

  .sec-point-bg {
    width: 50px;
    height: 50px;
    top: -25px;
  }

  .sec-point-bg::before {
    font-size: 1em;
    top: -31px;
    left: auto;
  }

  .sec-point-bg img {
    width: 30px;
    height: auto;
  }

  .sec-point-box {
    font-size: 1.8rem;
    letter-spacing: 0;
    padding: 2em 1em 1.5em;
    margin-top: 5em;
    text-align: center;
  }

  .sec.hikaku {
  }

  .sec.hikaku .u-margin {
    margin: 2em 0;
  }

  .table-title {
    width: 228px;
    height: auto;
    top: -66px;
  }

  .pc-special-table .table-b,
  .pc-special-table .table-heading-b {
    display: none;
  }

  .special-table {
    font-size: 1.5rem;
    line-height: 1.5;
  }

  .special-table .table-a,
  .special-table .table-b {
    padding: 1.5em 1em;
  }

  .special-table .table-b {
    border-left: 3px solid #009af8;
    border-right: 3px solid #009af8;
  }

  .special-table .table-b.last {
    border-bottom: 3px solid #009af8;
  }

  .special-table .table-heading-a {
    font-size: 1.8rem;

    border-radius: 10px 10px 0 0;
    border-right: 2px solid #333;
  }

  .special-table .table-heading-b {
    font-size: 1.25em;
    border: 3px solid #009af8;
    padding: 1.5em 1em 1.5em 0.5em;
    font-weight: 600;
  }

  .special-table .table-a {
    border-right: 2px solid #333;
  }

  .special-table .table-a.last {
    border-radius: 0 0 10px 0;
  }

  .special-table .table-item {
    padding: 0;
    vertical-align: middle;
  }

  .special-table .table-lawyer {
    bottom: -3px;
    right: 0px;
    width: 70px;
  }

  .special-table .table-lawyer img {
    width: 100%;
    height: auto;
  }

  .sp-arrow {
    width: 30px;
    height: 30px;
    background-color: #f8ad00;
    margin: 2em auto 4em;
    position: relative;
  }

  .sp-arrow::after {
    content: "";
    position: absolute;
    border: 26px solid transparent;
    border-top: 35px solid #f8ad00;
    display: inline-block;
    top: 28px;
    left: 50%;
    margin-left: -26px;
  }
}

.jirei .pc_flex {
  justify-content: flex-start;
}

.jirei ul li {
  padding: 70px 50px;
  margin-bottom: 60px;
  background-color: #ffffff;
  box-shadow: 0px 5px 30px 0px rgb(0 0 0 / 10%);
}

.jirei ul li div {
}
.jirei_text {
  margin-top: 50px;
}
.jirei_text b {
  color: #d54b00;
  font-weight: 600;
}
.jirei ul li div br {
  display: block;
  content: "";
  margin: 10px 0;
}

.jirei ul li img {
  width: 320px;
  height: 195px;
  object-fit: cover;
  position: relative;
  box-shadow: 11px 11px 0 #dbd9d9;
  margin-right: 60px;
}

.jirei ul li div h1 {
  font-size: 3rem;
  color: #d54b00;
  line-height: 1.3;
  font-weight: 600;
}

.jirei ul li div h2 {
  font-size: 2.2rem;
  line-height: 1.2;
  margin-top: 20px;
  border-left: 2px solid #d54b00;
  padding: 10px 20px;
  font-weight: 600;
}

.jirei ul li span {
  background: linear-gradient(transparent 78%, #f8d5a3 60%);
}

#jirei h1 {
  text-align: center;
  font-weight: 600;
  margin-bottom: 20px;
}
#jirei h1 span {
  text-align: center;
  color: #425ff2;
}

#jirei h2 {
  text-align: center;
  font-weight: 600;
  margin-bottom: 20px;
}
#jirei h2 span {
  text-align: center;
  color: #d54b00;
}
@media screen and (max-width: 480px) {
  .jirei ul li div h2 {
    font-size: 2rem;
  }
  .jirei ul li {
    padding: 35px 15px;
  }

  .jirei ul li img {
    width: 80%;
    display: block;
    margin: 0 auto;
  }
  .jirei ul li h1 {
    margin-top: 80px;
  }
  .jirei_text {
    margin-top: 20px;
  }
}

.bg-stripe-green {
  background: repeating-linear-gradient(
    -45deg,
    #fff 0,
    #fff 4px,
    #f3f7f7 4px,
    #f3f7f7 6px
  );
}
.aisatu #case_pulldown .box .white {
  padding: 10px 20px 20px;
  margin-top: 60px;
}
.aisatu .flex {
  align-items: center;
}

.aisatu .casetitle {
  font-weight: 600;
  font-size: 3rem;
  margin-top: 20px;
}
.bengoshi_img {
  width: 360px !important;
  padding: 10px;
}

.jirei_tag_gengaku {
  display: block;
  text-align: center;
  margin: 40px 0;
}

.jirei_tag_gengaku h2 {
  position: relative;
  display: inline-block;
  padding: 0 95px;
  text-align: center;
  font-size: 3rem;
  line-height: 1.5;
}

.jirei_tag_gengaku h2 {
  font-weight: 600;
  color: #186cce;
  font-size: 3.5rem;
  margin: 70px 0 45px 0;
}

.jirei_tag_seikyu h2 {
  color: #bf4d4d;
  margin: 30px 0;
}

.jirei_tag_gengaku h2:before,
.jirei_tag_gengaku h2:after {
  position: absolute;
  top: calc(50% - 3px);
  width: 50px;
  height: 10px;
  content: "";
  border-top: solid 3px #000;
  border-bottom: solid 3px #000;
}

.jirei_tag_gengaku h2:before {
  left: 0;
}

.jirei_tag_gengaku h2:after {
  right: 0;
}

@media screen and (max-width: 480px) {
  .jirei_tag_gengaku {
    margin: 0;
  }
  .jirei_tag_gengaku h2 {
    font-size: 2rem;
    padding: 0 56px;
  }

  .jirei_tag_gengaku h2 span {
    font-size: 2rem;
  }

  .jirei_tag_gengaku h2:before,
  .jirei_tag_gengaku h2:after {
    position: absolute;
    top: calc(50% - 3px);
    width: 40px;
    height: 10px;
    content: "";
    border-top: solid 1.5px #000;
    border-bottom: solid 1.5px #000;
  }
}
#case_pulldown {
  position: relative;
}
#case_pulldown .box {
  margin: 0 auto 4.8rem;
}
#case_pulldown .box:last-child {
  margin-bottom: 0;
}
#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: 600;
  font-size: 8.2rem;
  margin-bottom: -40px;
  margin-left: -30px;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  #case_pulldown .box .tab p {
    font-size: 2.8rem;
  }
}
#case_pulldown .box .tab p span {
  font-size: 6rem;
}
#case_pulldown .box .white {
  position: relative;
  background: #fcfaf5;
  overflow: hidden;
  padding: 70px 135px 30px;
  margin: 0 auto;
  box-shadow: 0px 5px 30px 0px #0000001a;
}
#case_pulldown .box .white .flex {
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  #case_pulldown .box .white .flex {
    justify-content: space-around;
  }
}
#case_pulldown .box .white h1 {
  font-size: 3rem;
  font-weight: 600;
  margin-bottom: 40px;
  line-height: 1.6;
  border-bottom: 1px solid;
  padding-bottom: 20px;
}
@media screen and (max-width: 768px) {
  #case_pulldown .box .white h1 {
    font-size: 2rem;
    margin-bottom: 15px;
  }
}

#case_pulldown .box .white .initial li:last-child .t3 {
  position: relative;
  display: inline-block;
  background: #e6e8ec;
  padding: 20px 30px;
  border-radius: 1.2rem;
  line-height: 1;
}

#case_pulldown .box .white .isharyou_box {
  font-size: 3rem;
  font-weight: 600;
  text-align: center;
  background: #e4e4e4;
  margin-bottom: 20px;
  width: 100%;
  max-width: 400px;
}
#case_pulldown .box .white .get li:last-child .t2 span.s1 {
  padding: 0 1rem;
  margin-right: 0.8rem;
  position: relative;
  font-size: 11rem;
  color: #ff6632;
  letter-spacing: 0px;
}
#case_pulldown .box .white::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  border-width: 0 30px 30px 0;
  border-style: solid;
  border-color: #f6f6f6 #f6f6f6 #d7ceb3 #d7ceb3;
  background: #d7ceb3;
  display: block;
  width: 0;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3),
    -1px 1px 1px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), -1px 1px 1px rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.3), -1px 1px 1px rgba(0, 0, 0, 0.2);
}
#case_pulldown .box .white .profile {
  margin-bottom: 3.2rem;
  align-items: center;
}
#case_pulldown .box .white .profile li:first-child {
  margin-right: 3.2rem;
}
@media screen and (max-width: 768px) {
  #case_pulldown .box .white .profile li:first-child {
    margin-right: 0rem;
  }

  @media screen and (max-width: 768px) {
    #case_pulldownul {
      display: flex;
      border-bottom: 2px dashed #d9e0e5;
      padding-bottom: 13px;
      align-items: center;
      margin-bottom: 20px;
    }
  }

  #case_pulldown .box .white .isharyou_box {
    font-size: 2rem;
    margin-bottom: 0;
  }
}
#case_pulldown .box .white .profile li:first-child img {
  max-width: 200px;
}

#case_pulldown .box .white .pc_flex {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}

#case_pulldown .box .white .pc_flex .isharyou_box {
  flex-shrink: 0;
  width: auto;
  min-width: 200px;
}
#case_pulldown .box .white .profile li:last-child {
}
#case_pulldown .box .white .profile li span {
  position: relative;
  display: inline-block;
  color: #393939;
  font-weight: 600;
  line-height: 1;
  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;
}
@media screen and (max-width: 768px) {
  #case_pulldown .box .white .initial li:first-child {
    margin-right: 1.5rem;
  }
}
#case_pulldown .box .white .initial li:first-child .t1 {
  font-weight: 400;
  font-size: 2.3rem;
  line-height: 1.2;
}
#case_pulldown .box .white .initial li:first-child .t2 {
  text-align: center;
  font-weight: 600;
  margin-top: -20px;
}
#case_pulldown .box .white .initial li:first-child .t2 span {
  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-size: 6rem;
  font-weight: 600;
}
#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 .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 li:first-child {
  margin-right: 1rem;
}
#case_pulldown .box .white .get li:first-child .t1 {
  text-align: center;
  width: 95px;
  padding: 17px;
  color: rgb(48, 48, 48);
  font-weight: 600;
  line-height: 1.14;
  font-size: 3rem;
  background: #ffef31;
}
@media screen and (max-width: 768px) {
  #case_pulldown .box .white .get li:first-child .t1 {
    font-size: 2.5rem;
    padding: 10px;
    width: fit-content;
  }
}
#case_pulldown .box .white .get li:last-child {
}
#case_pulldown .box .white .get li:last-child .t2 {
  line-height: 1.2;
  font-weight: 600;
  text-wrap: nowrap;
}
#case_pulldown .box .white .get li:last-child .t2 span {
  position: relative;
  z-index: 1;
  font-size: 3rem;
}
#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: #ffde67;
  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-top: 20px;
}
#case_pulldown .box .white .text br {
  display: block;
  content: "";
  margin: 10px 0;
}
#case_pulldown .box .white .text .mark1 {
  margin-bottom: 10px;
  background-color: #0d5abf;
  color: white;
  width: fit-content;
  border-radius: 19px;
  padding: 1px 15px;
}
#case_pulldown .box .white .text > div {
  margin-bottom: 25px;
}
#case_pulldown .box .white .answer-btn {
  text-align: center;
  margin-top: 25px;
}
#case_pulldown .box .white .answer-btn img {
  margin: 0 auto;
  display: block;
}
#case_pulldown .box .white .answer-btn img.open {
  width: 10.8rem;
}
#case_pulldown .box .white .answer-btn img.close {
  width: 6rem;
  display: none;
}
#case_pulldown .box .white .answer-btn img:hover {
  cursor: pointer;
}
#case_pulldown .case_img {
  width: 63%;
  margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
  #case_pulldown .box .white {
    padding: 55px 10px 20px;
  }
  #case_pulldown .box .white .profile {
    display: flex;
    flex-flow: column;
    align-items: center;
    margin: 0 auto 20px;
  }
  #case_pulldown .box .white .profile li:first-child img {
    width: 100px;
    margin-top: 20px;
  }
  #case_pulldown .box .white .profile li:last-child {
    padding-top: 0rem;
  }
  #case_pulldown .box .white .initial {
    align-items: center;
  }
  #case_pulldown .box .white .initial li:first-child .t2 {
    margin-top: 0;
  }
  #case_pulldown .box .white .initial li:first-child .t2 span {
    font-size: 2.5rem;
  }
  #case_pulldown .box .white .initial li:last-child .t3 {
    text-align: center;
  }
  #case_pulldown .box .white .get li:last-child .t2 span.s1 {
    font-size: 8rem;
    margin-right: 0;
  }
  #case_pulldown .box .white .get li:last-child .t2 span.s1:after {
    height: 1.6rem;
    bottom: 0;
  }

  #case_pulldown .case_img {
    width: 100%;
  }
}

.amount_sk {
  width: fit-content;
  margin: 0 auto;
  font-size: 2.3rem;
  margin-top: 20px;
  margin-bottom: 20px;
  text-align: center;
  border-radius: 10px;
}

.amount_sk p {
  border: #d54b00 2px solid;
  color: #d54b00;
  font-weight: 600;
  padding: 5px 175px 0;
}
.amount_sk p span {
  font-size: 3rem;
}
.amount_sk p:first-child {
  background-color: #d54b00;
  color: white;
  font-weight: 600;
}

.amount_gk {
  width: fit-content;
  margin: 0 auto;
  font-size: 2.3rem;
  margin-top: 20px;
  margin-bottom: 20px;
  text-align: center;
  border-radius: 10px;
}

.amount_gk p {
  border: #425ff2 2px solid;
  color: #425ff2;
  font-weight: 600;
  padding: 5px 175px 0;
}
.amount_gk p span {
  font-size: 3rem;
}
.amount_gk p:first-child {
  background-color: #425ff2;
  color: white;
  font-weight: 600;
}

.soudan_mark1,
.soudan_mark2 {
  width: fit-content;
  font-size: 3rem;
  font-weight: 600;
  border-bottom: 3px solid #d1d1d1;
  margin-bottom: 10px;
}

#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: 600;

  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:first-child .t2.sl span {
}

#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: 600;
}
#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: 600;

  font-size: 3rem;
  margin-bottom: 30px;
}

#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:last-child {
}
#case_pulldown .box .white .get li:last-child .t2 {
  line-height: 1.2;
  font-weight: 600;
}
#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: #d54b00;
  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;
}
#case_pulldown .box .white .answer-btn img.close {
  width: 6rem;
  display: none;
}
#case_pulldown .box .white .answer-btn img:hover {
  cursor: pointer;
}
@media screen and (max-width: 480px) {
  #case_pulldown .box .white .page_btn {
    margin: 10px auto 0;
    display: block;
    width: 100%;
  }
  #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: 600;
    font-family: "Noto Serif JP";
    font-size: 8.2rem;
    margin-bottom: -40px;
    margin-left: -30px;
  }
  #case_pulldown .box .tab p span {
  }
  #case_pulldown .box .white {
    box-shadow: 0px 5px 30px 0px rgb(0 0 0 / 10%);
    /* border-radius: 0 3.2rem 3.2rem 3.2rem; */
    margin: 0 auto;
    padding: 20px;
  }

  .bengoshi_img {
    width: 300px !important;
    height: auto;
    padding: 10px;
  }
  .aisatu #case_pulldown .box .white {
    padding: 10px 20px 20px;
  }

  .aisatu .flex {
    display: flex;
    flex-flow: column;
    margin: 20px 0;
    align-items: center;
  }

  .aisatu .flex .img {
    display: flex;
    flex-flow: column;
    align-items: center;
  }

  .aisatu .casetitle {
    font-weight: 600;
    font-size: 2rem;
    line-height: 1.4;
    margin-top: 20px;
  }

  #case_pulldown .box .white .profile {
    margin-bottom: 3.2rem;
  }

  #case_pulldown .box .white .profile li span {
    position: relative;
    display: inline-block;
    color: #393939;
    font-weight: 600;
    line-height: 1;
    margin: 0;
    font-size: 1.5rem;
  }

  .solution_title {
    font-weight: 600;
    line-height: 1.3;
    font-size: 2rem;
    margin: 30px 0;
  }

  .case-section__label {
    width: fit-content;
    border: 1px solid;
    border-radius: 19px;
    padding: 1px 15px;
    margin-bottom: 13px;
  }

  .case-section__label--before {
    border-color: #0e5abf;
    color: #0e5abf;
  }

  .case-section__label--after {
    background: #495d91;
    color: white;
    margin-top: 30px;
    border-color: #495d91;
  }

  .case-section__content {
    margin-bottom: 20px;
  }

  #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: 600;
    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:first-child .t2.sl span {
  }

  #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: 600;
  }
  #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: center;
    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:last-child .t2 {
    line-height: 1.2;
    font-weight: 600;
  }
  #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: 15px 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: 38px;
    margin-top: 20px;
    width: auto;
  }
  #case_pulldown .box .white .answer-btn img.close {
    height: 38px;
    width: auto;
    display: none;
  }
  #case_pulldown .box .white .answer-btn img:hover {
    cursor: pointer;
  }

  .voice_icon {
    width: 80px;
    height: fit-content;
  }
  .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
      );
  }
}
@media screen and (max-width: 480px) {
  .amount_sk,
  .amount_gk {
    width: 100%;
    font-size: 2rem;
  }
  .amount_sk p,
  .amount_gk p {
    padding: 5px 0;
  }

  /* #case_pulldown .box .white img:last-child {
        width: 100%;
        height: 195px;
        object-fit: cover;
    } */

  .soudan_mark1,
  .soudan_mark2 {
    font-size: 2.3rem;
    color: #e98048;
  }
}
.koe_box {
  background: #fff url(../images/r-i-v-c1.png) top center no-repeat;
  background-size: 100% auto;
  margin-top: 50px;
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 30px;
  font-size: 16px;
  border-radius: 10px 10px 0 0;
  overflow: hidden;
}

.koe_box header {
  width: unset;
}
.koe_img {
  width: 100%;
}
.r-i-hd {
  margin-top: 135px;
  padding: 30px 25px;
  display: inline-block;
  color: #fff;
  background: linear-gradient(to right, #ee7176, rgba(255, 175, 145, 0.6));
}
.r-i-hd-label {
  background: #fff;
  color: #f8ad00;
  font-weight: 600;

  display: inline-block;
  text-align: center;
  width: 80px;
}

.r-i-hd-tx {
  font-weight: 600;

  line-height: 1.8;
  font-size: 25px;
  margin-top: 10px;
}

.r-i-hd-p {
  margin-top: 30px;
}

.r-v-c {
  border-radius: 10px 10px 0 0;
  overflow: hidden;
  background: #fff url(../images/r-v-bg.png) top center no-repeat;
  padding: 30px 0;
  background-size: cover;
}

.r-v-c .flex-column img {
  width: 70%;
  display: block;
  margin: 0 auto;
}

.box-shadow {
  box-shadow: 0px 3px 8px rgba(51, 51, 51, 0.15);
}

.r-i-qa-h {
  background-color: #fff1ee;
  border-left: 6px solid #f8ad00;
  padding: 10px 18px;
  font-weight: 600;
  margin-bottom: 15px;
}

.koe_text {
  margin-top: 30px;
}

.fee-list-wrap {
  padding: 0;
  margin: 20px auto;
  width: 100%;
}

@media screen and (max-width: 480px) {
  .fee-list-wrap {
    width: 100%;
    padding: 0 10px;
  }
  .r-i-hd {
    margin-top: 55px;
    padding: 20px 25px;
  }

  .r-i-hd-tx {
    font-size: 20px;
  }

  .r-i-qa-d {
    padding: 0 10px;
  }
}

.fee-list-wrap small {
  color: #555;
  font-size: 0.8em;
}

.fee-list-wrap h4 {
  font-size: 1.2em;
  margin: 20px auto 10px;
  padding: 5px 10px;
  font-weight: 600;
}

.fee-list-wrap table {
  border: 2px solid #ccc;
}

.fee-list-wrap table th {
  width: 30%;
  font-size: 1.1em;
}

.fee-list-wrap table th.fee-item {
  width: 20%;
  border-left: none;
}

@media screen and (max-width: 480px) {
  .fee-list-wrap table th.fee-item {
    text-align: center;
  }

  .fee-list-wrap table th.fee-item br {
    display: none;
  }
}

.fee-list-wrap table th,
.fee-list-wrap table td {
  border-left: 1px dashed #ccc;
  vertical-align: middle;
}

@media screen and (max-width: 480px) {
  .fee-list-wrap table th,
  .fee-list-wrap table td {
    width: 100% !important;
    display: block;
    border: none !important;
  }
}

.fee-list-wrap table .thick-line {
  border-bottom: 2px solid #ccc;
}

@media screen and (max-width: 480px) {
  .fee-list-wrap table .thick-line {
    border-bottom: none;
  }
}

.fee-list-wrap .fee-split-claim {
  padding: 3px;
  font-weight: 600;
  font-size: 0.9em;
  color: #f8ad00;
  border: 2px solid #f8ad00;
  border-radius: 5px;
  background: #fff3f3;
}

.fee-list-wrap .fee-split-claimed {
  padding: 3px;
  font-weight: 600;
  font-size: 0.9em;
  color: #5571ff;
  border: 2px solid #5571ff;
  border-radius: 5px;
  background: #f6f7ff;
}

.fee-list-wrap .fee-split-divorce {
  padding: 3px;
  font-weight: 600;
  font-size: 0.9em;
  color: #f8a412;
  border: 2px solid #f8a412;
  border-radius: 5px;
  background: #fffbf4;
}

.fee-list-wrap.fee-claim th {
  background: #fff3f3;
}

.fee-list-wrap.fee-claim th.fee-item {
  background: #ffe5e5;
  color: #f8ad00;
}

.fee-list-wrap.fee-claimed th {
  background: #eef9ff;
}

.fee-list-wrap.fee-claimed th.fee-item {
  background: #d4f1ff;
  color: #425ff2;
}

.fee-list-wrap.fee-divorce th {
  background: #fff4e1;
}

.fee-list-wrap.fee-divorce th.fee-item {
  background: #ffe5b7;
  color: #ff7600;
}

.fee-model-box .flex.aline-items-center {
  justify-content: center;
}

.fee-model-box .left-item {
  display: none;
}

.fee-model-box .dl-table-column dt {
  font-size: 0.9375rem;
  padding: 0.75em 0.75em;
}

.fee-model-box .dl-table-column dd {
  padding: 0.75em 0.75em;
}

.fee-model-box .fee-model {
  font-size: 1em;
  font-weight: 600;
  padding: 1em 0.5em 0;
}

.fee-model-box .wrap-fee-point .fee-small-point {
  white-space: nowrap;
  right: auto;
  left: -15px;
  bottom: -26px;
}

.temp-red .dl-table-column dt {
  background-color: #fff3f3;
  color: #f8ad00;
  font-weight: 600;
  font-size: 1.125rem;
}

.dl-table-column {
  display: inline-flex;
  flex-direction: column;
  text-align: center;
  border: 1px solid #94a3a9;
  border-radius: 10px;
  margin-top: 1.5rem;
  overflow: hidden;
}

.dl-table-column dt {
  background-color: #eee;
  padding: 0.5rem;
  border-bottom: 1px dashed #94a3a9;
  letter-spacing: 0;
}

.dl-table-column dd {
  padding: 0.5rem 2.25rem;
}

.detail_btn img {
  width: 100%;
  margin-bottom: 25px;
}

.more_btn {
  width: 100%;
  cursor: pointer;
}
.more_btn img {
  transition: all 0.3s ease;
}

.more_btn img:hover {
  -webkit-transform: translate3d(0, 6px, 0);
  transform: translate3d(0, 6px, 0);
  box-shadow: none;
  position: relative;
}

.more_detail {
  display: none;
}

.more_detail .close_btn {
  text-align: center;
  margin: 20px auto;
  display: block;
  font-weight: 600;
  color: gray;
}
.hidden {
  display: none;
}

.article-body img {
  width: 100%;
}

.article-body table {
  overflow: hidden;
  border: 2px solid #ddd;
  border-spacing: 0;
  border-collapse: separate;
  border-radius: 10px;
  margin: 1em 0;
}

.article-body table td + td,
.article-body table th + th,
.article-body table th + td {
  border-left: 1px dashed #ddd;
}

.article-body table th,
.article-body table td {
  border-bottom: 1px dashed #ddd;
}

.article-body table tr:last-child > th,
.article-body table tr:last-child > td {
  border-bottom: 1px dashed transparent;
}

.article-body table th,
.article-body table .tabe-column {
  background-color: #eee;
  padding: 0.8em 1em;
}

.article-body table .table-column {
  border-right: 1px solid #eee;
}

.article-body table td {
  padding: 0.8em 1em;
}

.heading-txt {
  padding-right: 30px;
  width: fit-content;
  font-size: 3rem;
  border-bottom: 3px solid #d1d1d1;
  margin-bottom: 10px;
  color: #e98048;
}

.section-body {
  padding: 30px;
  margin-top: 30px;
}

.asterisk p {
  font-size: 1.6rem;
}

.card {
  width: 100%;
  margin: 10px 0;
}

.page-article {
  padding: 20px 30px;
}

.page-article .heading-txt {
  margin: 0;
}

.indent-asterisk {
  font-size: 1.5rem;
}

@media screen and (max-width: 769px) {
  .heading-txt {
    font-size: 2.3rem;
    margin-left: 15px;
  }

  .section-body {
    padding: 20px 10px;
    margin-bottom: 30px;
  }

  .article-body {
    font-size: 1.5rem;
  }

  .indent-asterisk {
    font-size: 1.1rem;
  }

  .card {
    width: 100%;
    margin: 10px 0;
  }

  .page-article {
    padding: 20px 10px;
    font-size: 1.5rem;
  }

  .page-article .heading-txt {
    margin: 0;
    font-size: 1.8rem;
  }
}

.muryo_case span {
  font-weight: 600;
  background: linear-gradient(transparent 77%, #fcb18a 77%);
}
.note {
  font-size: 1.5rem;
  margin-top: 20px;
}

@media screen and (max-width: 769px) {
  .note {
    font-size: 1.3rem;
    margin-top: 20px;
  }
}

.box27 {
  background: url(../images/USP_back_gk.png) center top / cover no-repeat
    transparent;
}
/* 追従アクションボタン */
.floating-actions {
  font-family: "Noto sans JP";
  position: fixed;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 10px;
  z-index: 1000;
  align-items: end;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.floating-actions.show {
  opacity: 1;
  visibility: visible;
}

.action-button {
  min-width: 60px;
  width: 60px;
  height: 60px;
  background: #4caf50;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  cursor: pointer;
  transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s,
    background 0.3s;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  position: relative;
  text-decoration: none;
  color: rgb(255, 255, 255);
  padding: 0;
}

.action-button:hover {
  width: 240px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.25);
}

.action-button.phone {
  background: #2196f3;
}
.action-button.phone .action-text {
  font-size: 2.2rem;
}

.action-button.phone:hover {
  background: #1976d2;
}

.action-button.email {
  background: #f6ca1b;
  color: rgb(44, 44, 44);
}

.action-button.email:hover {
  background: #ffc515;
}

.action-icon {
  font-size: 24px;
  min-width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.3s;
}

.action-text {
  opacity: 0;
  max-width: 0;
  overflow: hidden;
  white-space: nowrap;
  font-size: 18px;
  font-weight: bold;
  font-weight: 500;
  padding-right: 15px;
  margin-left: 0px;
  transition: max-width 0.3s, opacity 0.3s, margin-left 0.3s;
}

.action-button:hover .action-text {
  opacity: 1;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin-left: 0px;
}

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

#footer_CTA {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 135px;
  background: #ffffff;
  z-index: 99999;
  /*はじめは非表示*/
  opacity: 0;
  transform: translateY(110px);
  /* Android Chrome対応の追加 */
  box-sizing: border-box;
  max-width: 100vw;
  overflow: hidden;
}

#footer_CTA.UpMove {
  animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime {
  from {
    opacity: 0;
    transform: translateY(135px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#footer_CTA.DownMove {
  animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 1;
    transform: translateY(135px);
  }
}

#footer_CTA img {
  width: 23px;
}

.footer_CTA_call {
  display: flex;
  flex-flow: column;
  align-items: center;
  width: 50%;
  background-color: #f68531;
  color: white;
  font-size: 80%;
  padding: 8px;
  font-weight: 600;
  justify-content: center;
  padding-bottom: 30px;
  /* Android Chrome対応の追加 */
  box-sizing: border-box;
  flex-shrink: 0;
  min-width: 0;
}

.footer_CTA_mail {
  display: flex;
  flex-flow: column;
  align-items: center;
  width: 50%;
  background-color: #f5b527;
  color: white;
  font-size: 80%;
  padding: 8px;
  font-weight: 600;
  justify-content: center;
  padding-bottom: 30px;
  /* Android Chrome対応の追加 */
  box-sizing: border-box;
  flex-shrink: 0;
  min-width: 0;
}

#footer_CTA .attention {
  font-size: 3.7vw;
  text-align: center;
  line-height: 1.2;
  color: #1f96d2;
  border: 2px solid;
  padding: 5px 0;
}

#footer_CTA .attention span {
  font-size: 1.8rem;
  margin-top: 4px;
  display: block;
  font-weight: 600;
}

/* footer_CTA内のflexコンテナにも追加 */
#footer_CTA .flex {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  box-sizing: border-box;
}

.box27 img {
  width: 85%;
  margin: 5px auto 0;
  display: block;
}
.box27 .content {
  padding: 10px 0;
}

.box25 {
  margin: 0em auto 2em;
  text-align: center;
  padding: 2em;
  border-top: solid 5px #6b6857;
  border-bottom: solid 5px #6b6857;
  background-color: #fafafa; /*背景色*/
}
.box25 h1 {
  font-size: 2.8rem;
  font-weight: 600;
}
.box25 h1 span {
  background: linear-gradient(transparent 77%, #ffe5ac 77%);
}

@media screen and (max-width: 769px) {
  .box25 {
    font-size: 1.5rem;
    margin: 2em auto 0em;
    text-align: center;
    padding: 15px;
    border-top: solid 3px #6b6857;
    border-bottom: solid 3px #6b6857;
    background-color: #fafafa; /*背景色*/
  }
  .box25 h1 {
    font-size: 2.3rem;
    font-weight: 600;
    margin-bottom: 10px;
  }
  .box25 h1 span {
    background: linear-gradient(transparent 77%, #ffe5ac 77%);
  }
}
#nayami h2 {
  position: relative;
  padding: 1.5rem;
  text-align: center;
  background: #fff;
  color: white;
  font-weight: 600;
  font-size: 2.3rem;
}

#nayami h2:before,
#nayami h2:after {
  position: absolute;
  content: "";
}

#nayami h2:before {
  top: -40px;
  left: calc(50% - 40px);
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #bf4d4d;
}

#nayami .gengaku_box h2:before {
  background: #3d8fb4;
}

#nayami h2:after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #bf4d4d;
  border-radius: 10px;
}

#nayami .gengaku_box h2:after {
  background: #3d8fb4;
}

#nayami h2 i {
  font-size: 30px;
  font-size: 3rem;
  line-height: 60px;
  position: absolute;
  z-index: 1;
  top: -40px;
  left: calc(50% - 40px);
  width: 80px;
  height: 60px;
  text-align: center;
}

#nayami h2 span {
  position: relative;
  z-index: 1;
  display: block;
  line-height: 1.6;
  margin: 6px 0;
}

.triangleb {
  width: 0;
  height: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid #efa0a0;
}

.gengaku_box .triangleb {
  border-top: 30px solid #719ecc;
}

.bg_pattern {
  position: relative;
  background-color: #f9ffff;
  z-index: 1;
}
.Cross {
  background: radial-gradient(
      circle,
      transparent 20%,
      #f9ffff 20%,
      #f9ffff 80%,
      transparent 80%,
      transparent
    ),
    radial-gradient(
        circle,
        transparent 20%,
        #f9ffff 20%,
        #f9ffff 80%,
        transparent 80%,
        transparent
      )
      50px 50px,
    linear-gradient(#e4eff4 4px, transparent 4px) 0 -2px,
    linear-gradient(90deg, #e4eff4 4px, #f9ffff 4px) -2px 0;
  background-size: 100px 100px, 100px 100px, 50px 50px, 50px 50px;
}

.omakase {
  position: relative;
  /* z-index: 2; */
  width: 900px;
  margin: 0px auto;
  padding: 0 0 0px 0;
  display: block;
}
.bg_pattern img {
  width: 100%;
  margin-top: -40px;
}

@media screen and (max-width: 769px) {
  .omakase {
    position: relative;
    /* z-index: 2; */
    width: 100%;
    margin: 0px auto;
    padding: 0 0 0px 0;
    display: block;
  }
  .bg_pattern img {
    width: 100%;
    margin-top: -11px;
  }
}
.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;
  object-fit: cover;
}
.appeal_point .appeal_point_title {
  color: #a57300;
  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;
}

@media screen and (max-width: 769px) {
  .appeal_point .appeal_point_title + p {
  }
}

.appeal_point .ap01_text {
  position: relative;
  line-height: 1.8;
  background-color: white;
  padding: 35px 20px;
  /* z-index: 500; */
  box-shadow: 0px 5px 30px 0px rgb(0 0 0 / 10%);
  margin-bottom: 50px;
}
.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 .ap01_text {
    width: 48%;
  }
  .appeal_point .appeal_point_title + p {
    line-height: 2;
  }
  .appeal_point .ap01_text::before {
    margin: -25px 41%;
  }
}

.area_box {
  background: #fff;
  width: 300px;
  margin: 14px;
  border: 1px solid #ccc;
  line-height: 1.2;
  padding: 8px;
}

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

@media screen and (max-width: 769px) {
  .area_box {
    width: 100%;
    margin: 14px 0;
  }
}

.syoko_box {
  background-color: #ca787e;
  padding: 10px 0;
}

.syoko_box img {
  width: 1100px;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 769px) {
  .syoko_white {
    background-color: white;
    margin: 20px;
    padding: 30px 0;
  }
}

@media screen and (max-width: 769px) {
  .syoko_box img {
    width: 100%;
  }

  .syoko_box {
    padding: 10px 0;
  }
}

.bigpoint_box {
  background-color: #fef2e9;
  padding: 50px 0;
}

.bigpoint_box img {
  width: 1100px;
  display: block;
  margin: 0 auto;
}

@media screen and (max-width: 769px) {
  .bigpoint_box {
    padding: 20px 0;
  }

  .bigpoint_box img {
    width: 100%;
  }
}
.im_box {
  clear: both;
  margin-top: 0px;
  font-weight: normal;
}
.im_box ul li {
  list-style-type: none;
  margin-bottom: 5px;
  padding: 12px 0px 12px 45px;
  background: #fff;
  font-size: 2rem;
}
.im_box ul li::before {
  position: absolute;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f058";
  font-size: 20px;
  color: #1f56b4;
  margin: 1px -29px;
}
@media screen and (max-width: 769px) {
  .im_box {
    padding: 0;
  }

  .im_box ul li {
    font-size: 1.6rem;
  }
}

.box_15 {
  background: #eaf5f9;
  padding: 1.5em;
  margin-top: 30px;
}
@media screen and (max-width: 769px) {
  .box_15 {
    background: #eaf5f9;
    padding: 15px;
    margin-top: 30px;
  }
}

.box_15_ttl {
  border-left: solid 4px #27acd9;
  padding-left: 15px;
  color: #27acd9;
  font-weight: bold;
  font-size: 1.2em;
  margin-bottom: 10px;
}
.box_15_txt {
  margin-top: 10px;
}

small {
  font-size: 60% !important;
  line-height: 1.2;
  display: block;
}

.office_subtabletitle {
  text-align: center;
  font-size: 2.2rem;
  font-weight: bold;
  margin-bottom: 20px;
  color: #333;
}

@media screen and (max-width: 768px) {
  .office_subtabletitle {
    font-size: 1.8rem;
  }
}

.flex_wrap {
  display: flex;
  justify-content: center;
  align-items: stretch;
  gap: 20px;
  flex-wrap: wrap;
}

@media screen and (max-width: 768px) {
  .flex_wrap {
    flex-direction: column;
    gap: 15px;
  }
}

.area_box {
  background: #fff;
  width: 45%;
  min-width: 400px;
  border: 1px solid #ccc;
  line-height: 1.6;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  box-sizing: border-box;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.area_box .content-wrapper {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.area_box .map-section {
  margin-top: auto;
}

@media screen and (max-width: 768px) {
  .area_box {
    width: 100%;
    min-width: auto;
    margin-bottom: 20px;
    flex: 1 1 100%;
  }
}

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

@media screen and (max-width: 768px) {
  .area_box a {
    font-size: 1.4rem;
  }
}

.area_box a:hover {
  text-decoration: underline;
}

.area_box .shiten_title {
  text-align: center;
  font-weight: bold;
  color: #000;
  font-size: 2rem;
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 2px solid #27acd9;
}

@media screen and (max-width: 768px) {
  .area_box .shiten_title {
    font-size: 1.6rem;
  }
}

.area_box iframe {
  margin-top: 15px;
  border-radius: 4px;
  width: 100%;
  height: 250px;
  max-width: 100%;
  box-sizing: border-box;
}

.area_box {
  font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
  .area_box {
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 768px) {
  .area_box iframe {
    height: 200px;
    margin-top: 10px;
  }
}

/* exclude_text_gengaku.php と exclude_text_seikyu.php 用のスタイル */

.info-special h3 {
  text-align: center;
  color: #8b1000;
  margin-bottom: 10px;
  font-size: 2rem;
  line-height: 1.3;
}
@media screen and (max-width: 480px) {
  .info-special h3 {
    font-size: 1.5rem;
  }
}

.info-special {
  background: #f8eaea;
  margin: 10px auto 50px;
  padding: 15px 10px;
  text-align: left;
  font-size: 1.7rem;
  width: 92%;
}

@media screen and (max-width: 480px) {
  .info-special {
    padding: 15px 10px;
    font-size: 1.5rem !important;
    border: 2px solid #bd271a;
  }
}

ul.asterisk-special {
  margin-left: 100px;
  flex-wrap: wrap;
  justify-content: space-evenly;
}

@media screen and (max-width: 480px) {
  ul.asterisk-special {
    margin-left: 28px;
  }
}

ul.asterisk-special li {
  list-style-type: none;
  margin-bottom: 5px;
}

@media screen and (max-width: 480px) {
  ul.asterisk-special li {
    margin: 0;
    line-height: 1.5;
    padding: 5px 0;
  }
}

.info-special span {
  background: linear-gradient(transparent 78%, #ffc8c8 60%);
  font-weight: 600;
}

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

@media screen and (max-width: 480px) {
  ul.asterisk-special li:before {
    margin: -4px -23px;
  }
}
