@charset "utf-8";
html:has(.guide){
  scroll-behavior: smooth;
}
.fp_guide {
  font-size: 16px;
  line-height: 24px;
  max-width: 910px;
  width: 94%;
  margin: 0 auto;
}

.fp_guide p {
  font-size: 16px;
  line-height: 1.8;
   margin-bottom: 1.5em;
}

/* .fp_guide h3 {
  margin-top: 30px;
} */

.fp_guide a[name] {
  display: block;
}

.fp_guide_toc {
  padding: 0;
  margin: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  max-width: 720px;
}

.fp_guide_toc li {
  width: 33.33%;
}

.text_q {
  font-weight: 700;
  margin-bottom: 10px;
  background-color: #F2F2F2;
}

.text_a {
  padding: 0 1em;
}

.fp_guide table {
  margin: 20px 0;
}

.fp_guide td {
  padding: 5px;
  vertical-align: top;
}

.fp_guide th {
  background: #ccc;
  padding: 5px;
  border: 1px solid #fff;
  text-align: left;
  vertical-align: top;
}

.totoppage {
  position: fixed;
  bottom: 10px;
  right: 50px;
  z-index: 99;
}

.fp_guide_icongroup {
  width: 100%;
  display: flex;
  margin-left: 50px;
  flex-wrap: wrap;
  align-items: center;
}

.fp_guide_box {
  width: 600px;
  margin-bottom: 1em;
}

.fp_guide_icongroup li {
  list-style: none;
}

.fp_guide_icongroup .group1 {
  margin: 0px;
  padding: 0px;
}

.fp_guide_icongroup .group2 {
  margin: 5px 10px 0 0;
  padding: 0px;
  width: 90px;
}
.contents_guide {
padding:5px 10px;
width:93%;
}
.guide_navi {
display: flex;
/* flex-wrap: wrap; */
justify-content: space-between;
gap: 21px;
padding-left: 0;
margin-top: -81px;
padding-top: 81px;
padding-bottom: 80px;
}
.guide_navi a {
display: block;
}
.guide_navi li {
display: flex;
justify-content: center;
align-items: center;
width: 130px;
height: 176px;
background: #f4f4f4;
}
.guide-icon-title {
position: relative;
border-bottom: 3px solid #dfdfdf;
font-size: 24px;
font-family: "Noto Sans JP";
color: #1b1b1b;
font-weight: bold;
line-height: 1.851;
padding-bottom: 7px;
letter-spacing:0.008em;
margin-top: 100px;
margin-bottom: 24px;
margin-top: -81px;
padding-top: 81px;
}  
.guide-icon-title::after {
content: "";
display: block;
width: 103px;
height: 0;
border-bottom: 3px solid #72a06e;
position: absolute;
bottom: -3px;
left: 0;
z-index: 5;
}
.guide-icon-title .title_icon {
width: 38px;
height: auto;
margin-bottom: -7px;
margin-right: 11px;
}
/* #soryonituite .guide-icon-title,#osiharai .guide-icon-title {
margin-top: -60px;
padding-top: 60px;
} */
.guide .text-link {
color: #72a06e;
text-decoration: none;
border-bottom: 1px solid #72a06e;
transition: .4s ease;
}
.guide .text-link:hover {
border-bottom: none;
}
.guide #bokunoutoha .text-link {
font-size: 18px;
font-weight: bold;
line-height: 1.556;
}
.text-link b {
font-family: sans-serif;
font-size: 24px;
}
.guide-grey-title{
width: 100%;
margin-top: 0;
margin-bottom: 1em;
padding: 6px 14px;
font-size: 16px;
font-family: "Noto Sans JP";
color: #1b1b1b;
font-weight: bold;
line-height: 1.75;
top: 1825.737px;
z-index: 1019;
background-color: #f2f2f2;
box-sizing: border-box;
}
.text-notice{
font-size: 18px;
font-family: "Noto Sans JP";
color: #72a06e;
font-weight: bold;
line-height: 1.556;
}
.guide h4 {
margin: 30px 0 16px;
font-size: 18px;
font-family: "Noto Sans JP";
color: #1b1b1b;
font-weight: bold;
line-height: 1.444;
}

.guide table{
table-layout: fixed;
width: 100%;
border-collapse:collapse;
}
.guide table th,.guide table td {
border: 1px solid #dbdbdb;
padding: 20px;
font-size: 14px;
}
.guide table td{
/* border-right-width: 0; */
padding-right: 40px;
}
.guide table th{
background-color: #f2f2f2;
width: 20%;
max-width: 178px;
font-weight: normal;
}
.g-dotto-list {
padding-left: 1.5em;
padding-bottom: 1.5em;
line-height: 1.8;
}
.g-dotto-list li {
position: relative;
list-style: none;
}
.g-dotto-list li::before {
content: "";
display: block;
border-radius: 50%;
background-color: #72a06e;
position: absolute;
width: 10px;
height: 10px;
position: absolute;
left: -1.5em;
top: calc(50% - 5px);
}
.guide-dl {
margin: 0;
}
.guide-dl dt, .guide-dl dd {
display: inline-block;
}
.guide-dl dd {
margin-left: 0.5em;
}
.step_item {
display: flex;
gap: 30px;
}
.step_item >*{
  flex: 0 1 50%;
}
.step_item:not(:last-child){
border-bottom: 1px solid #f2f2f2;
margin-bottom: 30px;
padding-bottom: 20px;
}
.step_content .step-ttl {
font-size: 18px;
font-family: "Noto Sans JP";
color: #72a06e;
font-weight: bold;
line-height: 1.556;
margin: 0 0 10px;
}
.step_content p{
font-size: 14px;
}
.step_img img {
  margin-left: auto;
}
.step_img p {
font-size: 14px;
margin: 0.5em 0;
}
.logo-intro {
display: flex; 
gap: 18px;
}
#logo .title-icon {
margin-right: 15px;
}
.wabisabi-works, .wabisabi-interview {
background-color: #f4f4f4;
padding: 28px 30px;
margin-top: 30px;
}
.wabisabi-works h3 {
font-size: 20px;
color: #72a06e;
font-weight: bold;
line-height: 1.4;
text-align: center;
margin: 0 0 16px;
}
.wabisabi-works .work-list, .interview-head {
display: flex;
gap: 23px;
justify-content: center;
align-items: center;
}
.logo_recmoxwabisabi {
display: block;
margin: 0 auto 30px;
}
.interview-head {
  margin-bottom: 20px;
}
.interview-head h3 {
font-size: 24px;
font-weight: bold;
line-height: 1.667;
max-width: 68%;
text-align: left;
margin-top: 0;
}
.interview-content dt {
background-color: #dfdfdf;
padding: 6px  20px;
line-height: 2;
text-indent: -2em;
padding-left: 3em;
margin-bottom: 20px;
font-weight: bold;
}
.interview-content dt::before{
content: "Q.";
display: inline;
padding-right: 8px;
font-size: 18px;
color: #72a06e;
font-weight: bold;
line-height: 2;
}
.interview-content dd{
text-indent: -2em;
padding-left: 3em;
margin-left: 0;
margin-bottom: 30px;

}
.interview-content dd::before {
content: "A.";
display: inline;
padding-right: 8px;
font-size: 18px;
color: #72a06e;
font-weight: bold;
line-height: 2;
}
.guide .guide-greeting {
font-size: 22px;
color: #72a06e;
font-weight: bold;
line-height: 1.591;
text-align: center;
margin: 50px 0 30px;
}
.guide a:has(img){
display: inline-block;
}
.guide-text-green{
  color: #72a06e;
}
.guide section{
  margin-bottom: 0;
  padding-bottom: 20px;
}

@media screen and (max-width:768px) {
  .fp_guide_box {
    max-width: 365px;
  }

  .fp_guide_icongroup {
    margin-left: 10px;
  }

  .fp_guide_icongroup .group2 {
    width: 70px;
  }
}




@media screen and (max-width: 768px) {
  .fp_guide_toc li {
    width: 50%;
  }

  .fp_guide thead {
    display: none;
  }

  .fp_guide th,
  .fp_guide td {
    display: block;
    width: 100%;
  }

  .fp_guide p img {
    margin: 0 !important;
  }

  .fp_guide h3 {
    overflow: hidden;
  }

  .fp_guide h3 img {
    max-width: none;
  }
  /* ----- sp style----------- */
  .guide_navi {
    justify-content: center;
    gap: 10px 3%;
    flex-wrap: wrap;
    padding-bottom: 0;
  }
  .guide_navi li {
  flex: 0 1 30%;
  min-width: 30%;
  height: auto;
  text-align: center;
  padding: 10px 0;
  }
  .guide_navi li img {
   max-width: 80%;
   height: auto;
  }
  .guide-icon-title {
    margin: 30px 0 1em;
    font-size: 18px;
    padding-top: 30px;
  }
  .guide-icon-title .title_icon {
    width: 28px;
  }
  .guide table th{
    width: 100%;
    max-width: unset;
    padding: 10px 20px;
  }
  .step_item{
    flex-direction: column;
    gap: 0;
  }
  #logo .title-icon {
    width: 35%;
    height: auto;
  }
  .logo-intro {
    flex-direction: column;
  }
  .logo-intro img {
    margin: 0 auto;
  }
  .wabisabi-works, .wabisabi-interview{
    padding-right: 3%;
    padding-left: 3%;
  }
  .wabisabi-works .work-list{
    flex-wrap: wrap;
  }
  .interview-head  {
    flex-direction: column-reverse;
    align-items: center;
    padding-bottom: 30px;
  }
  .logo_recmoxwabisabi{
    max-width: 94%;
    height: auto;
  }
  .interview-head h3,.guide .guide-greeting{
    font-size: 18px;
  }
  .interview-head h3{
    width: 100%;
  }
  .guide section{
    padding-bottom: 2px;
  }
}
/*topへ戻る*/
#move_to_top.square_top {
position: fixed;
bottom: 157px;
right: -80px;
z-index: 10;
-webkit-transition: all .2s ease;
transition: all .2s ease;
}
#move_to_top.square_top >a {
display: block;
width: 60px;
height: 60px;
border-radius: 12px 0 0 12px;
background-color: #eee;
color: #888;
font-size: 12px;
font-weight: bold;
text-align: center;
text-decoration: none;
text-indent: 0;
line-height: 1.8;
padding: 7px;
-webkit-transition: background-color .2s ease;
transition: background-color .2s ease;
}
#move_to_top.square_top svg {
transform: rotate(180deg);
}
#move_to_top.square_top #icon-arrow {
display: block;

}
#move_to_top.square_top.show {
right: 0;
}
